- 博客(60)
- 资源 (1)
- 收藏
- 关注
转载 android源码分析
获得Android源码后,我们来分析源码结构。源码的全部工程分为如下三个部分。①Core Project:核心工程部分,这是建立Android系统的基础,保存在根目录的各个文件夹中。②External Project:扩展工程部分,可以使其他开源项目具有扩展功能,保存在external文件夹中。③Package:包部分,提供了Android的应用程序,内容提供者,输入法和服务,保...
2020-05-24 22:04:08
1034
原创 android adb shell usb串口设备信息
查看 android usb串口设备信息 adb shell 进入执行 cat /proc/bus/input/devices看到。
2020-04-16 22:48:36
5305
2
原创 RxJava
RxJava 已经内置了几个 Scheduler :Schedulers.newThread(): 总是启用新线程,并在新线程执行操作。Schedulers.io(): I/O 操作(读写文件、读写数据库、网络信息交互等)所使用的 Scheduler。行为模式和 newThread() 差不多,区别在于 io() 的内部实现是是用一个无数量上限的线程池,可以重用空闲的线程,因此多数情况下 io...
2020-04-06 21:36:26
245
原创 android systemUI 定制
SystemUI模块:1、一键清除最近任务:frameworks\base\packages\SystemUI\src\com\android\systemui\recents\model\RecentsTaskLoader.java解决方案:通过系统服务代理获取加载列表信息,然后一个个删除。 public void removeAllRecents() { List<Recen...
2020-03-30 14:42:42
609
转载 Android ANR的定位与解决
1、前言ANR对于Android开发者来说一定不会陌生,从刚开始学习Android时的一不注意就ANR,到后来知道主线程不能进行耗时操作注意到这点后,程序出现ANR的情况就大大减少了,甚至于消失了。那么真的是只要在主线程做耗时操作就会产生ANR吗?为什么在有时候明明觉得自己没在主线程做耗时操作也出现了ANR呢?一旦出现莫名其妙的ANR,怎么定位导致ANR的产生的位置和解决问题呢?那么接下来就来一...
2020-03-30 13:31:18
1095
原创 android fragment 生命周期的执行
一、创建fragment A & B过程a、当没有加入后台堆栈中的时候,执行过程onAttach–》Activity的onAttachFragment–》onCreate–》onCreateView–》onActivityCreated–》onStart–》onResumeb、创建B过程两个fragment执行过程:A:onPause–》onStop–》onDestroyVie...
2020-03-30 12:36:16
333
原创 android apk反编译工具操作
工具:apktool,dex2jar-2.0,jd-gui 。1、把apk 后缀改zip ,解压2、把里面的class.dex 或者class2.dex 文件拷贝到dex2jar-2.0 脚本的跟目录下3、执行d2j-dex2jar.bat classes2.dex 会生成一个classes2-dex2jar.jar4、用jd-gui.exe打开...
2020-03-30 09:34:37
217
原创 android 项目依赖 build.gradle 管理
最近做了个项目涉及到多个模块化设计,为了保证build.gradle 的统一管理,做了相应的配置方便修改。
2020-03-29 12:59:29
902
1
原创 android使用TabLayout FragmentStatePagerAdapter 实现fragment联动 解决空白页问题
使用TabLayout &FragmentStatePagerAdapter 实现切换fragment ,但是一直是空白页,就是没有数据显示。看了一下源码解析:fragmetn的嵌套需要通过getChildFragmentManager()获取fragment 里面子容器的管理器。也就是项目中需要在FragmentStatePagerAdapter 指定的fragmentManager...
2020-03-28 09:20:02
417
原创 android activity间通信生命周期
一、activity A 启动Activity B 的过程,A生命周期的执行:二、从B返回到A ,A生命周期的执行过程:
2020-03-26 18:33:51
128
原创 android 项目串口通信(serialPort)开发遇到的炕
android 项目开发中使用到串口通信功能,在过程中遇到了一些炕。一、首先要安装Cmake以及 ndk工具。二、在跟main 目录下创建cpp 文件夹,以及CMakeLists.text 、SerialPort.c 文件三、在CMakeLists.text 文件中编写生成动态so库# For more information about using CMake with Androi...
2020-03-25 17:35:30
1602
原创 android builder模式设计 可能会遇到的问题
子类继承父类时,在写代码时可能会有读取不到父类方法的时候:需要用到泛型强转。如下:public class test {public static void main(String[] args) { new BuilderTest() .duration(100)// .delay(100)//未解决之前两个方法中的其中一个无法读取到 ...
2020-03-25 12:39:18
148
原创 android systemUI分析及个别定制修改
一、systemUI 主要负责显示系统、应用状态,主要有以下几部分组成:导航栏(NavigationBar),快捷开关面板(QSPanel)和最近开启的应用面板(RecentPanel)状、态栏(StatusBar)及锁屏音量调节对话框、RingTonePlayer播发器界面、通知栏(Notification Panel)、PowerUI界面等等。StatusBar:状态显示(时间、电量、信号...
2020-03-24 14:48:10
1068
原创 android 混淆规则 学习总结
混淆的规则1.压缩 Shrinking默认开启,优化Apk体积,移除未使用的类和成员#关闭压缩-dontshrink2.优化 Optimization默认开启,在字节码中进行优化,让应用运行更快#关闭优化#-dontoptimize#表示proguard对代码进行迭代优化的次数,Android一般为5-optimizationpasses n3.混淆 Obfuscation...
2020-03-24 10:48:15
574
原创 android app 瘦身优化
一、apk 分析工具:使用 analyze Apk (2.2版本之后才有)a、可以查看apk 组成及大小和占比等b、查看dex文件组成c、Apk对比如下:直接把apk 拖拽到androidstudio 中。二、apk 进行代码瘦身a、代码混淆:把代码格式打乱,用特殊符号代替,以难理解的形式写成无意义的名字,防止被反编译。android studio 自带的工具Proguard j...
2020-03-24 00:16:16
286
原创 java 基础 --泛型
一、泛型 :不确定的类型,用泛型来表示1、避免强制类型转换不被捕捉到而造成的异常2、减少程序运行时内存的使用3、使用泛型的时候,不需要进行类型转换public class OverClass {privte T over;public T getOver(){return over;}public void setOver(T over){this.over = over;}...
2020-03-23 14:02:58
215
原创 android Retrofit 简单使用
1、定义接口形式: 注解call get(@qurey(“limit”) ,String limit);“返回类型” 方法 请求参数类型2、创建retofit 对象:new Retrofit.Builder() //外观模式接口。//自动判断平台接口。返回平台实例有三种,android \java8\ios ,继承了//platform 的重写了两个方法 defautlt...
2020-03-23 12:15:35
395
原创 android 5.0 系统字体大小
如何修改android系统字体大小需要修改Settings的arrays资源文件、AccessibilitySettings中设置对应最大字体、和在Configuration.java里面设置初始默认的值。一、我们可以查看下arrays的代码初始0.851.01.151.30假如字体整体改大的话 <string-array name="entryvalues_font_...
2020-03-23 11:11:45
282
原创 android 源码修改
展讯修改方案[QUESTIdownload版本后首次开机慢[ANSWER]原因分析:开机过程中会去做odex优化,这样会加长开机时间,我们将其更改为编译时做odex优化解决方案:在device/sprd/scx35/BoardConfigCommon.mkWITH_DEXPREOPT := false修改如下:ifeq ((TARGETBUILDVARIANT),user)i...
2020-03-23 11:05:59
715
原创 android camera 录像拍照停止过程
-、camera 框架分析:1、getIntent().getAction();执行那个api?2、三点指示的xml文件:Indicators.xml (res\layout-land) 3、显示内容及指示器区域:Mode_options_overlay.xml (res\layout) 2016/5/274、侧滑模式图标显示布局:Arrays.xml (res\values) 3335...
2020-03-23 10:55:31
1393
原创 android systemUI 下拉图标
一、下拉状态栏添加图标:1、在配置文件frameworks/base/packages/SystemUI/res/values/config.xml添加要设置图片名称;如下面所示:这个文件在QStilehost.java 中的方法loadTileSpecs() 中调用。<string name="quick_settings_tiles_default" translatable="...
2020-03-23 10:45:28
1175
原创 android Launcher 定制修改
launcher3 图片、字体大小设置:packages\apps\Launcher3\src\com\android\launcher3\DynamicGrid.javadeviceProfiles.add(new DeviceProfile(“Nexus 7”,500, 800,4, 4,64, 20f,5, 60));Launcher3如何设置桌面的行数和列数?DeviceP...
2020-03-23 10:37:28
621
原创 android MVVM 笔记
MVVM实现需求:提供View,ViewModel以及MOdel三层将布局改为DataBinding布局VIew与ViewModel之间的通过DataBinding进行通信获取数据并展示界面上。MVVM:分为三层模式,一个view 模式,一个MOde模式,一个是ViewMOde模式,View (actiVity 或者是Fragment的layout使用了 layoutdatabing...
2020-03-23 10:19:22
163
转载 Android 7.0 FileProvider使用
1). FileProviderAndroid 7.0的新特性规定,对于android 7.0应用(仅仅对于android 7.0版本的sdk而言,若是编译版本低于25仍然不会受到影响),android框架使用StrictMode Api禁止我们的应用对外部(跨越应用分享)公开file://,若使用file://格式共享文件则会报FileUriExposedException异常,android...
2020-03-09 21:28:51
258
转载 Android WebView 的使用
1.1 WebView概述 Android WebView在Android平台上是一个特殊的View,它能用来显示网页,这个WebView类可以被用来在app中仅仅显...
2020-03-06 11:30:04
120
转载 Android基础知识学习- spinner使用
一、布局文件中的Spinner<LinearLayout android:layout_width="match_parent" android:layout_height="60dp" android:orientati...
2020-03-06 11:22:19
303
转载 Android LocalBroadcastManager的使用
一、BroadcastReceiver主要用途有发送通知,更新UI或者数据,应用程序间相互通信,监听系统状态(比如开机,网络等)二、BroadcasetReceiver的注册方式 ma...
2020-03-06 10:56:27
432
转载 Android知识体系总结(全方面覆盖Android知识结构,面试&进阶)
Android知识体系总结(全方面覆盖Android知识结构,面试&进阶 Version-3.0.0 时间:2020.01)这是一篇实时更新的Android知识体系总结的博客,如果你是一枚Android程序员,请跟随笔者的步伐,好好学习,实现所想所得。再一次来到金三银四,感谢大家对于这篇文章的认可,顺便道句:各位读者,新年好,希望新的一年你们能成长到自己像成长的样子,实现自己20...
2020-03-05 10:17:02
941
1
转载 android 体系框架
整体框架结构一:转自:https://blog.youkuaiyun.com/u010635353/article/details/49490549整体结构框架二:转自:http://www.yidian...
2020-03-05 09:11:46
110
转载 Android开发之设计模式-适配器模式
适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。这种模式涉及到一个单一的类,该类负责加入独立的或...
2020-03-03 11:36:27
136
1
转载 深入理解Activity
深入理解Activity学习内容地址:http://www.imooc.com/learn/413与activity的相关的framework层介绍ActivityThread在ActivityThread的main中:1、创建一个调用一个Looper....
2020-03-02 14:02:39
600
转载 Android的设计模式-简单工厂模式
Android的设计模式系列文章介绍,欢迎关注,持续更新中:Android的设计模式-设计模式的六大原则创建型模式:Android的设计模式-单例模式Android的设计模式-建造者模式Android的设计模式-工厂方法模式Android的设计模式-简单工厂模式Android的设计模式-抽象工厂模式Android的设计模式-原型模式行为型模式:Android的设计模式-策略...
2020-02-28 14:40:57
129
转载 Android使用Handler实现子线程与子线程、子线程与主线程之间通信
转载:https://blog.youkuaiyun.com/shaoenxiao/article/details/54561753今天这篇文章只讲一下怎么使用Handler实现子线程与子线程之间、子线程...
2020-02-28 14:09:50
1128
3
转载 ThreadLocal 解决多线程变量共享问题
版权声明:本文由吴仙杰创作整理,转载请注明出处:https://segmentfault.com/a/11900000092367771. ThreadLocalThreadLocal 不是一个线程,而是一个线程的本地化对象。当某个变量在使用 ThreadLocal 进行维护时,ThreadLocal 为使用该变量的每个线程分配了一个独立的变量副本,每个线程可以自行操作自己对应的变量副本,而...
2020-02-27 22:51:33
2869
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人