Android开发
ly969434341
这个作者很懒,什么都没留下…
展开
-
从ContentProvider认识Android跨进程通信
一.参考1.操作系统:图文详解 内存映射https://www.jianshu.com/p/719fc47588132. Android跨进程通信:图文详解 Binder机制 原理https://blog.csdn.net/carson_ho/article/details/735606423.Android:关于ContentProvider的知识都在这里了!https://blog.csdn.net/carson_ho/article/details/76101093...原创 2020-12-21 14:50:31 · 216 阅读 · 0 评论 -
Binder理解笔记[悠然红茶https://my.oschina.net/youranhongcha]
1.参考文章:(1)Binder系列—开篇:http://gityuan.com/2015/10/31/binder-prepare/(2)Binder系列10—总结http://gityuan.com/2015/11/28/binder-summary/(3)彻底理解Android Binder通信架构http://gityuan.com/2016/09/04/binder-star...原创 2019-04-22 16:29:01 · 334 阅读 · 0 评论 -
java类加载和xml加载区别和联系.
java类加载:是将字节码文件通过jvm的类加载器加载到内存中生成Class类实例的过程.主要包括类加载,链接和初始化三个过程.加载:其中就是将字节码文件通过类加载器加载到内存中;链接:包括三个部分,一个是验证:去验证文件是否合虚拟机规范; 一个是准备:为类变量分配内存,赋予默认值(0,false等);一个是解析:将符号引用替换为直接内存引用,比如将hello方法引用替换为内存地址1234这样.初始化:就是对类变量(static修饰的变量)进行初始化,执行类构造过程.xml加载:可以通过xm原创 2022-04-27 19:59:15 · 401 阅读 · 0 评论 -
推荐的Android app应用程序架构实践
参考1.Guide to app architecturehttps://developer.android.com/jetpack/guide总结概述(Overview)Given the condition of this environment, it’s possible for your app to be launched individually and out-of-order,and the operating system or user can destroy them at原创 2022-04-25 19:24:29 · 1978 阅读 · 0 评论 -
深入理解okio的优化思想
参考https://github.com/square/okio深入理解okio的优化思想https://blog.csdn.net/zoudifei/article/details/51232711#t4Okio从懵逼到掌握https://www.jianshu.com/p/84f1f4152124理解okio核心的优化在于将原来传统的拷贝文件时需要,使用到输入缓存,中间自定义缓存, 输出缓存,并进行内存拷贝的工作:File original = new File("hello.txt"原创 2022-03-14 15:15:09 · 2731 阅读 · 0 评论 -
Retrofit使用和理解
使用1.接口方法public interface GitHubService { @GET("/users/{user}/repos") Call<List<GitHubRepo>> reposForUser(@Path("user") String user);}返回的数据类型public class GitHubRepo { private int id; private String name; public Git原创 2022-03-10 16:31:35 · 2299 阅读 · 0 评论 -
Service两种启动方式startService和bindService区别
总结Service两种启动方式startService和bindService区别1.两者启动的Service的生命周期不同2.可以通过bindService会绑定到服务,然后利用返回的Binder去调用服务提供的方法.参考服务两种启动方式(startService与bindService)的区别https://blog.csdn.net/qq_42761395/article/details/98496921...原创 2022-03-09 17:42:41 · 622 阅读 · 0 评论 -
HttpURLConnection和HttpClient区别
HttpURLConnection和HttpClient区别HttpClient是apache提供的一个开源的网络请求库,.封装了http请求头,参数,内容体,响应等.api丰富,功能完善.但也不太好扩展.在5.1后Android废弃了HttpURLConnection是java的标准类,是一个轻量级的Http客户端,没有过多封装,使用灵活,早期Android版本上有些bug,后期解决后官方比较推荐使用.参考:HttpClient和HttpURLConnection的区别[转]https://w原创 2022-03-08 15:34:44 · 1868 阅读 · 0 评论 -
网络通信之Socket与LocalSocket的比较
网络通信之Socket与LocalSocket的比较https://www.shuzhiduo.com/A/gVdnmBKQ5W/理解Socket是网络通信的套接字实现; LocalSocket是Android用于系统内跨进程通信的实现. 都基于Client和Server模式进行通信.原创 2022-03-08 11:05:56 · 3700 阅读 · 0 评论 -
ContentProvider的实现原理
原理理解ContentProvider基于Binder实现跨进程的通信来传递数据.Client端进程使用ContentResolve.query的时候会通过AMS获取ContentProvider.若没有则会启动Provider端的进程,然后安装和发布Provider,之后Client端获得ContentProviderProxy,这样就可以用ContentProviderProxy和ContentProvider进行跨进程的数据传输.参考理解ContentProvider原理http:原创 2022-03-04 16:00:40 · 1152 阅读 · 0 评论 -
Android保活方法
参考Android 保活措施https://juejin.cn/post/6844904020901888008深度剖析APP保活案例http://gityuan.com/2018/02/24/process-keep-forever/2020年Android最新保活实现原理揭秘https://cloud.tencent.com/developer/news/585273Android实现进程保活方案解析https://cloud.tencent.com/developer/article原创 2022-02-22 16:14:01 · 1443 阅读 · 0 评论 -
Android音频系统学习理解
一. 参考1.深入理解Android音频框架AudioTrack到AudioFlinger及Mix过程https://blog.51cto.com/u_15127656/2800159二.理解原创 2022-02-07 01:05:29 · 1403 阅读 · 0 评论 -
拆轮子系列:拆 OkHttp--理解笔记
一.参考拆轮子系列:拆 OkHttphttps://blog.piasy.com/2016/07/11/Understand-OkHttp/index.html二.理解1.okhttp通过责任链模式构造了一系列interceptor; 将Request请求转换为Response返回; 其中每层的一个interceptor先尝试自己处理; 若处理未完成则交给下一个interceptor去处理.(会将自己处理的成果也传递到下一个interceptor).整体上okhttp从上到下有:(a)int原创 2022-01-17 19:57:56 · 1507 阅读 · 0 评论 -
Android 操作系统的内存回收机制
Android 操作系统的内存回收机制https://cstsinghua.github.io/2017/02/09/Android%20%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E7%9A%84%E5%86%85%E5%AD%98%E5%9B%9E%E6%94%B6%E6%9C%BA%E5%88%B6/#Linux-%E5%86%85%E6%A0%B8%E4%B8%AD%E7%9A%84%E5%86%85%E5%AD%98%E5%9B%9E%E6%94%B6...转载 2021-12-22 16:56:43 · 759 阅读 · 0 评论 -
Android启动速度优化
参考Android性能优化典范 - 第6季https://mp.weixin.qq.com/s/uySEk1cwxRENneFsoReFyw原创 2021-12-17 17:57:42 · 1587 阅读 · 0 评论 -
Gradle sync failed: A problem occurred configuring project ‘ java.lang.NullPointerException (no erro
问题解决记录1. 问题:Gradle sync failed: A problem occurred configuring project ’ java.lang.NullPointerException (no error message)2. 尝试的方法(1) 直接将最上层的java错误进行Google搜索解决方法.网上提供的rm .gradle 方法没有起作用.(1.1) 启示最上层的错误,没有更好的揭示底层导致问题的原因, 因此单纯的根据上层抛出的错误进行问题搜索解决.无法精准定位原创 2021-12-07 15:29:35 · 1609 阅读 · 0 评论 -
收发短信笔记
一. 参考SmsManagerhttps://developer.android.com/reference/android/telephony/SmsManagerAndroid SMS架构https://blog.csdn.net/ganjinrui/article/details/44758583?spm=1001.2014.3001.5501二. 理解总结短信等上层应用调用Framework层的管理类SmsManage.sendTextMessage进行短信发送.S原创 2021-11-15 16:54:44 · 1879 阅读 · 0 评论 -
Network security configuration
一. 参考Network security configurationhttps://developer.android.com/training/articles/security-config#CertificatePinning二. 理解1.Android客户端应用,通过信任系统预装的CAs,使用其公钥来验签,该CA颁发的证书.(此证书包含要访问服务的服务器域名,以及其公钥),用以证明该机构提供的公钥和域名就是该机构的真实域名和公钥;当客户端有了该服务机构的域名和公钥后就可以,用公钥加密要原创 2021-11-01 16:06:32 · 4136 阅读 · 0 评论 -
在AndroidManifest中添加<uses-library>作用
一. 参考https://developer.android.com/guide/topics/manifest/uses-library-element?hl=zh-cn二. 实际案例在开发的uplinkdemo应用中需要反射调用系统中的一个达到system/app/RtCloudSDK中的/RtCloudSDK.apk中的类的时候,无法反射找到.最后发现是没有在uplinkdemo应用的AndroidManifest的Application下添加关于<uses-lib原创 2021-10-28 16:27:51 · 738 阅读 · 0 评论 -
编译失败:ERROR: Unable to find method ‘org.gradle.api.tasks.compile.CompileOptions.s
https://juejin.cn/post/6844904167660584973转载 2021-10-27 16:59:01 · 646 阅读 · 0 评论 -
极致首帧播放方案-零首帧解决方案 --理解总结
一. 参考1.极致首帧播放方案-零首帧解决方案https://juejin.cn/post/6927857717105311758二. 理解总结复用播放内核: 播放内核的加载比较耗时, 会去复用之前业务已经创建的播放内核.预加载&预渲染: 将加载提前到(feed流页面点击和上一个直播滑动到2/3时); 并进行预先渲染出首帧....原创 2021-10-13 18:41:44 · 206 阅读 · 0 评论 -
subId、slotId、SubscriptionInfo和SubscriptionManager的解释及关系说明
subId、slotId、SubscriptionInfo和SubscriptionManager的解释及关系说明https://www.jianshu.com/p/c43a71bf7815转载 2021-10-09 20:29:12 · 757 阅读 · 0 评论 -
com.android.dex.DexException: Multiple dex files define Landroid/support/v4/os/ResultReceiver$1
参考:How to solve this problem?Multiple dex files define Landroid/support/v4/os/ResultReceiver #926https://github.com/firebase/quickstart-android/issues/926Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompa转载 2021-09-18 15:40:35 · 332 阅读 · 0 评论 -
Android Broadcast广播机制分析
一. 参考Android Broadcast广播机制分析http://gityuan.com/2016/06/04/broadcast-receiver/二. 理解广播注册端, 将BrodcastReceiver信息(含有对应intent的filter信息)注册到AMS的队列中广播发送端, sendBrodcast(intent), 将广播发到AMS中;然后在AMS中, 广播intent 和其对应的Receiver的intent filter进行筛选匹配获取对应的Receiver然后将消息从原创 2021-09-10 20:15:09 · 109 阅读 · 0 评论 -
Android触摸事件全过程分析:由产生到Activity.dispatchTouchEvent()
一. 参考Android触摸事件全过程分析:由产生到Activity.dispatchTouchEvent()https://juejin.cn/post/6844903779435970573原创 2021-09-06 20:30:20 · 450 阅读 · 0 评论 -
图形渲染机制
一. 参考Android应用程序UI硬件加速渲染技术简要介绍和学习计划https://blog.csdn.net/luoshengyang/article/details/45601143原创 2021-08-20 19:52:49 · 131 阅读 · 0 评论 -
Retrofit 理解
一. 参考Retrofithttps://square.github.io/retrofit/从架构角度看Retrofit的作用、原理和启示https://www.jianshu.com/p/f57b7cdb1c99二. 个人目前理解Retrofit是一个网络工作的框架工具, 用以产生网络工作对象. 底层网络请求使用了OKHttp, 主要通过将网络访问中的不变部分统一处理,易变部分让用户自定义适配处理. 用于简化网络工作....原创 2021-08-18 16:29:14 · 70 阅读 · 0 评论 -
浅谈小程序运行机制
一. 参考浅谈小程序运行机制https://segmentfault.com/a/1190000019131399微信小程序架构原理http://eux.baidu.com/blog/fe/%E5%BE%AE%E4%BF%A1%E5%B0%8F%E7%A8%8B%E5%BA%8F%E6%9E%B6%E6%9E%84%E5%8E%9F%E7%90%86百度小程序框架性能优化实践百度App技术https://www.infoq.cn/article/sdlydd9n1qzz5fhkus原创 2021-08-02 16:52:07 · 145 阅读 · 0 评论 -
cmake 问题解决 Error occurred while communicating with CMake server
cmake 问题解决 Error occurred while communicating with CMake serverhttps://www.codenong.com/cs106950403/转载 2021-07-09 20:23:06 · 648 阅读 · 0 评论 -
android Starting LLDB server: lldb process:gdb-remote packets“ failed to get reply to handshake pack
解决方法参考:Android Studio 1.4 cannot launch debug serverhttps://stackoverflow.com/questions/33172427/android-studio-1-4-cannot-launch-debug-server中第一个回答.转载 2021-07-09 20:20:36 · 665 阅读 · 0 评论 -
AIDL Demo演示
一.参考https://developer.android.com/guide/components/aidlhttps://android.googlesource.com/platform/development/+/master/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.javaService Intent must be explicit的解决方案https://blog.csdn.net/pv原创 2021-07-05 18:50:08 · 135 阅读 · 2 评论 -
【源码解析】Service的启动过程
【源码解析】Service的启动过程https://www.jianshu.com/p/3f50e3d06129转载 2021-05-20 20:10:03 · 101 阅读 · 0 评论 -
Android查看源码网址
http://androidxref.com/9.0.0_r3/search?q=Activity&defs=&refs=&path=&hist=&project=system原创 2021-05-18 17:30:11 · 119 阅读 · 0 评论 -
Android studio结合MAT分析hprof文件
Android studio结合MAT分析hprof文件https://blog.csdn.net/tangedegushi/article/details/83029481转载 2021-05-14 15:38:40 · 187 阅读 · 0 评论 -
内存优化方法总结
一. 参考Manage your app’s memoryhttps://developer.android.com/topic/performance/memory#remove二. 总结使用为移动平台优化的数据结构比如在少量数据情况下,用SparseArray替换HashMap移除一些只用很少功能却很大的库,改为自己实现该功能比如在上传头像图片这个很小的功能点上用了一个很大的第三方ugc库就可以删掉,改为自己用原生接口实现....原创 2021-05-12 16:25:57 · 269 阅读 · 0 评论 -
ContentProvider的各个方法分别运行在哪个线程
一. 参考1.Which thread runs ContentProvider?https://stackoverflow.com/questions/3491747/which-thread-runs-contentprovider?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa2.contentprovider和线程以及阻塞https://blog.csdn.net/changqi原创 2021-05-06 19:51:23 · 999 阅读 · 0 评论 -
Android系统匿名共享内存Ashmem(Anonymous Shared Memory)简要介绍和学习计划 [从中可以看到AIDL接口定义下Binder远程调用本质]
[从中可以看到AIDL接口定义下Binder远程调用本质]Android系统匿名共享内存Ashmem(Anonymous Shared Memory)简要介绍和学习计划https://blog.csdn.net/Luoshengyang/article/details/6651971转载 2021-05-06 17:40:23 · 167 阅读 · 0 评论 -
Activity has leaked window that was originally added
Activity has leaked window that was originally addedhttps://stackoverflow.com/questions/2850573/activity-has-leaked-window-that-was-originally-added?page=1&tab=votes#tab-top转载 2021-04-28 17:05:14 · 104 阅读 · 0 评论 -
Android WebView设置Cookie
Android WebView设置Cookiehttps://www.jianshu.com/p/53897db4d734转载 2021-04-27 16:32:48 · 385 阅读 · 0 评论 -
Android官方源码开发文档https://source.android.com/devices/graphics/arch-sh
Android官方源码开发文档https://source.android.com/devices/graphics/arch-sh原创 2021-04-26 01:01:17 · 1150 阅读 · 0 评论