android开发
文章平均质量分 60
lin-0410
最痛苦的事情,不是失败了,而是我本可以......
所以,如果目标还没去实现,不要感叹为时已晚,因为种一棵树最好的时间是十年前,其次是现在!
展开
-
Android7.0 Gralloc模块的加载
很多文章说Gralloc模块是由FramebufferNativewindow在构造函数中加载的,但是在android7.0的代码中没有找到FrameBufferNativewindow类。通过查看代码,7.0版本,应该是HWComposer模块的构造函数中加载了Gralloc库:// Load and prepare the FB HAL, which uses the gralloc原创 2017-04-25 10:48:21 · 1330 阅读 · 4 评论 -
代码中dumphprof数据
转载自:https://gist.github.com/pyricau/4726389fd64f3b7c6f32 Dump the heap on OutOfMemoryError crashes in your debug builds. Raw OomExcep转载 2017-08-02 16:48:48 · 905 阅读 · 0 评论 -
android 中c/c++层用到的同步机制
Android 中的同步机制。 什么是同步,什么是互斥? 如果多个(包括两个)进程间存在时序关系,需要协同工作以完成一项任务,就叫同步。 如果他们之间并不满足协同的条件,而只是因为共享具有排他性的资源时所产生的关系,就叫互斥。 C/C++层用到的同步机制。一,Mutex进程间的同步Mutex,Mutual Exclusion的原创 2017-09-25 18:27:28 · 823 阅读 · 0 评论 -
EventBus的使用
相关文章:1、《EventBus使用详解(一)——初步使用EventBus》2、《EventBus使用详解(二)——EventBus使用进阶》一、概述EventBus是一款针对Android优化的发布/订阅事件总线。主要功能是替代Intent,Handler,BroadCast在Fragment,Activity,Service,线程之间传递消息.优点是开销小,代码更优雅。转载 2017-08-31 14:40:01 · 202 阅读 · 0 评论 -
Android内存优化
转:http://www.cnblogs.com/ldq2016/p/6635774.html 智能手机发展到今天已经有十几个年头,手机的软硬件都已经发生了翻天覆地的变化,特别是Android阵营,从一开始的一两百M到今天动辄4G,6G内存。然而大部分的开发者观看下自己的异常上报系统,还是会发现各种内存问题仍然层出不穷,各种OOM为crash率贡献不少。Android开发发展到今天也是已经转载 2017-08-31 19:29:38 · 434 阅读 · 0 评论 -
Android 中进程、线程的概念
一,Android 进程和线程进程-Process 是程序的一个运行实例,以区别于“程序”这一静态的概念,线程-Thread则是cpu调度的基本单位。一个进程的创建是通过Process.start()来完成的,其中的参数可以定制进程启动后最先执行的线程,通常会指定为ActivityThread,所以一个进程起来后先运行的就是这个主线程。Process会通过socket把创建进程的请求发给z...原创 2016-04-05 08:21:42 · 4970 阅读 · 0 评论 -
Camera框架之Camera2
转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼yuiop:http://blog.csdn.net/hejjunlin/article/details/52751055 前言:监于5.0之后Google用的是Camera2相关API取代之前的Camera,过时的Camera虽然精典,但不再进行介绍,可自行查阅相关资料。今天本文是在正式深入代码前对Camera2的一个补充。上篇中转载 2017-10-20 14:10:42 · 857 阅读 · 0 评论 -
Camera2框架从Java层到C++层类关系
转自:http://blog.csdn.net/hejjunlin/article/details/53138945 Agenda:getSystemService(Context.CAMERA_SERVICE)CameraManager.getCameraIdList()ICameraService.aidlICameraService.cppcamera2中从Java层转载 2017-10-20 14:54:37 · 754 阅读 · 0 评论 -
Android Fragment 你应该知道的一切
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/42628537,本文出自:【张鸿洋的博客】很久以前写过两篇Fragment的介绍,主要就是介绍其功能:Android Fragment 真正的完全解析(上)和Android Fragment 真正的完全解析(下) 有兴趣的可以凑合看下。之前的博客属于怎么使用Fragment,本文目...转载 2017-10-20 19:56:52 · 336 阅读 · 0 评论 -
Binder:为什么要通过onTransact()调用目标方法
转载自:http://www.jianshu.com/p/b260051237fe Binder:为什么要通过onTransact()调用目标方法 0x00 背景最近被提出一串问题:为什么android.os.Binder要提供onTransact()方法给子类重写。为什么要通过Client:invokeMethod -> onTransact() -> Service:targetM...转载 2017-08-08 18:19:37 · 1718 阅读 · 0 评论 -
隐藏在应用程序背后的Binder机制
相关文档参考:点击打开链接 http://blog.csdn.net/lin20044140410/article/details/73739901点击打开链接 http://blog.csdn.net/lin20044140410/article/details/50951260如果你对Binder比较陌生,那么对BindService这样的接口应该很熟悉。BindService这函数,就是希望...原创 2016-04-09 18:54:23 · 440 阅读 · 0 评论 -
Android 进程间通信 Binder
相关文档参考: 打开链接 http://blog.csdn.net/lin20044140410/article/details/51106372打开链接 http://blog.csdn.net/lin20044140410/article/details/73739901Android 进程间通信 Binder, 学习过程中的做的一些记录,不足之处,还请多指教! 相关代码可以查看...原创 2016-03-21 23:18:44 · 1115 阅读 · 0 评论 -
Camera (api1)的打开过程
Camera (api1)的打开过程 setModuleFromIndex()@CameraActivity.javaà{ mPhotoModule = new PhotoModule();mPhotoModule.init(this,mCameraPhotoModuleRootView); mCurrentModule= mPh原创 2017-09-04 18:29:39 · 885 阅读 · 0 评论 -
Android总结篇系列:Android广播机制
点击打开链接转自:http://www.cnblogs.com/lwbqqyumidi/p/4168017.html Android总结篇系列:Android广播机制1.Android广播机制概述Android广播分为两个方面:广播发送者和广播接收者,通常情况下,BroadcastReceiver指的就是广播接收者(广播接收器)。广播作为Android组件间的通信转载 2017-10-13 16:57:23 · 531 阅读 · 0 评论 -
android中属性动画 property Animation
【工匠若水 http://blog.csdn.net/yanbober 转载请注明出处。点我开始Android技术交流】4 Property Animation(属性动画)使用详解在使用属性动画之前先来看几个常用的View属性成员:translationX,translationY:控制View的位置,值是相对于View容器左上角坐标的偏移。rotationX,rotationY:转载 2017-10-23 16:49:58 · 452 阅读 · 0 评论 -
多个基于AIDL的server,Binder驱动怎么区分它们
一个进程要想提供Binder服务,必须要调用ProcessState::self()->startThreadPool();IPCThreadState::self->joinThreadPool();这两个方法,然后整个进程就进入一个Binder loop循环了。ProcessState负责打开Binder设备节点,做mmap内存映射,,IPCThreadState是负责跟Binde...原创 2017-08-09 19:38:22 · 531 阅读 · 3 评论 -
Android 系统稳定性 - ANR(二)
转载:http://rayleeya.iteye.com/blog/1955657 【原创】Android 系统稳定性 - ANR(二) 博客分类:Android移动开发 android稳定性ANR文章都为原创,转载请注明出处,未经允许而盗用者追究法律责任。 很久之前写的了,留着有点浪费,共享之。编写者:李文栋P.S. Ope转载 2017-11-28 10:13:10 · 490 阅读 · 0 评论 -
Android 系统稳定性 - ANR(一)
转载:http://rayleeya.iteye.com/blog/1955652【原创】Android 系统稳定性 - ANR(一) 博客分类:Android移动开发 android稳定性ANR文章都为原创,转载请注明出处,未经允许而盗用者追究法律责任。很久之前写的了,留着有点浪费,共享之。编写者:李文栋 如果你是一转载 2017-11-28 10:09:29 · 746 阅读 · 0 评论 -
Android 系统稳定性 - ANR(三)
转载:http://rayleeya.iteye.com/blog/1956056【原创】Android 系统稳定性 - ANR(三) 博客分类:移动开发AndroidandroidANR稳定性文章都为原创,转载请注明出处,未经允许而盗用者追究法律责任。 很久之前写的了,留着有点浪费,共享之。 编写者:李文栋 1.4 如何转载 2017-11-28 10:15:34 · 293 阅读 · 0 评论 -
Android 系统稳定性 - Watchdog
转载:http://rayleeya.iteye.com/blog/1963408#comments 【原创】Android 系统稳定性 - Watchdog 博客分类:Android移动开发 Android稳定性Watchdog重启文章都为原创,转载请注明出处,未经允许而盗用者追究法律责任。 很久之前写的了,留着有点浪费,共转载 2017-11-28 10:21:09 · 1017 阅读 · 0 评论 -
Android 性能优化(一)
转载:http://rayleeya.iteye.com/blog/1961005 【原创】Android 性能优化(一) 博客分类:移动开发AndroidAndroid性能performance文章都为原创,转载请注明出处,未经允许而盗用者追究法律责任。 编写者:李文栋Android性能优化 根据Android的层次结构转载 2017-11-28 10:23:53 · 291 阅读 · 0 评论 -
Android] 内存泄漏调试经验分享 (一)
推荐看看这篇:转:https://blog.csdn.net/itachi85/article/details/77075455常用的解决方法思路如下尽量使用Application的Context而不是Activity的 使用弱引用或者软引用 手动设置null,解除引用关系 将内部类设置为static,不隐式持有外部的实例 注册与反注册成对出现,在对象合适的生命周期进行反注册操作。...转载 2017-11-28 10:27:21 · 263 阅读 · 0 评论 -
[Android] 内存泄漏调试经验分享 (二)
转载:http://rayleeya.iteye.com/blog/755657[Android] 内存泄漏调试经验分享 (二) 博客分类:AndroidAndroidEclipseGitOS虚拟机接上篇:[Android] 内存泄漏调试经验分享 (一) http://rayleeya.iteye.com/blog/727074转载 2017-11-28 10:42:00 · 254 阅读 · 0 评论 -
Android 系统稳定性 - OOM(一)
转载:http://rayleeya.iteye.com/blog/1956059 【原创】Android 系统稳定性 - OOM(一) 博客分类:Android移动开发 android稳定性oom内存泄漏 文章都为原创,转载请注明出处,未经允许而盗用者追究法律责任。 很久之前写的了,留着有点浪费,共享之。 编写者:李文栋转载 2017-11-28 10:43:47 · 1272 阅读 · 0 评论 -
Android 系统稳定性 - OOM(二)
转载:http://rayleeya.iteye.com/blog/1956638 【原创】Android 系统稳定性 - OOM(二) 博客分类:移动开发Androidandroid稳定性OOM内存泄漏文章都为原创,转载请注明出处,未经允许而盗用者追究法律责任。 很久之前写的了,留着有点浪费,共享之。 编写者:李文栋 微转载 2017-11-28 10:47:51 · 477 阅读 · 0 评论 -
基于android6.0版本的SELinux文件访问安全策略
转自:http://blog.chinaunix.net/uid-7213935-id-5750899.html 在android6.0以后的版本,google采用了SELinux的文件访问安全策略,想比较以前,绝对提高了文件的安全,不像以前那样,对文件访问可以是无条件的。本篇文章就分享下常用的一些安全策略。1. linux传统 设备文件访问控制方法 传统的 Linux设备文件转载 2018-01-02 16:41:52 · 309 阅读 · 0 评论 -
Android sqlite数据库连接池连接异常分析
转:http://bbs.51cto.com/thread-1113117-1.html Android sqlite数据库连接池连接异常分析1. 在android开发过程中,突然碰到了这个错误,数据库连接分配不到,日志如下:W/SQLiteConnectionPool( 3681): Theconnection pool for database '/data/user/0/转载 2017-12-04 19:52:15 · 4043 阅读 · 1 评论 -
activity的启动模式,startactivity的过程
Android:launchMode用于指定Activity被启动的方式,主要包括两个方面:即Activity是否为单实例,及Activity归属的task。不管是那种方式,被启动的Activity都要位于Activitytask的栈顶。1),standard,默认状态,这种模式下Activity是多实例的,系统总是启动一个新的Activity来满足要求,即使之前已...原创 2017-09-28 19:59:34 · 2377 阅读 · 0 评论 -
获取Binder Server 的过程
相关文件参考:为什么将文件映射到进程空间,会比直接对文件read/write效率更高,请参考http://www.cnblogs.com/xubenben/p/4424398.html点击打开链接 http://blog.csdn.net/lin20044140410/article/details/50951260点击打开链接http://blog.csdn.net/lin...原创 2017-06-26 14:44:57 · 1630 阅读 · 0 评论 -
android jni的使用,java中代码在native层实现
这里主要是依据jni规范来实现java跟native的交互,在android环境下过程是类似的,只是native方法的名字要简洁很多,可以参见:http://blog.csdn.net/lin20044140410/article/details/50629836android应用层几乎都是java语言写的,application framework层多数也都是java代码,一些底层的系统原创 2016-01-29 10:37:18 · 2416 阅读 · 2 评论 -
android jni的使用
android中的jni,可以方便java与本地native的代码互相访问,上一篇文章是java访问本地方法的介绍,上一篇的做法是老版本jdk1.4之前的格式,新版本jdk1.6之后的格式是使用映射,本篇就是使用映射来实现java与native互相访问的一个实例,就是自己的一个笔记。抛开android环境,单纯java跟native的交互:http://blog.csdn.net/lin200原创 2016-02-03 16:11:36 · 529 阅读 · 0 评论 -
Android中的线程模型(十一)
转 如何优雅的停止线程:http://www.cnblogs.com/l2rf/p/5566895.htmlAndroid规定只有ui线程,也就是主线程才可以刷新UI,这样的规定的原因是UI操作是非线程安全的,如果允许多个线程同时执行ui操作,就必要加同步,而同步机制会影响执行性能,因为在同步中去wait或notify一个线程,通常都要借助操作系统来完成,所以存在用户线程跟内核线程之间的切换,这个...原创 2018-01-29 09:11:14 · 299 阅读 · 0 评论 -
Android 虚拟机的进程管理
一Android 虚拟机的进程管理Android 虚拟机进程管理是依赖linux的进程体系结构的,要为应用程序创建一个进程,它会使用linux的fork机制来复制一个进程(复制进程比创建进程更高效) 。执行这个操作的就是zygote。zygote是一个虚拟机进程,也是一个虚拟机实例的孵化器。当一个应用程序启动时,会通过socket发出请求,zygote在收到请求后会fork一个新的应用程序原创 2018-01-13 22:47:50 · 1960 阅读 · 0 评论 -
selinux 权限设置
针对一些platform_app应用无法访问data目录,提示是权限问题,比如:W/droid.gallery3d(3922): type=1400 audit(0.0:116): avc: denied { execute} for path="/data/data/com.android.gallery3d/code_cache/com.android.renderscript.cache原创 2016-11-14 19:18:47 · 2424 阅读 · 0 评论 -
编译java静态库,java共享库
把这段复制到app下的Android.mk的最后,可以编译出java共享库,这个.jar除了生成在\out\target\common\obj\JAVA_LIBRARIES这里,还会copy到\out\target\product\***\system\framework下,如果只是使用java静态库,可以include$(BUILD_STATIC_JAVA_LIBRARY),这样只会生成在\ou...原创 2017-02-17 18:27:09 · 4769 阅读 · 0 评论 -
Android的Multilib Build
在应用的Android.mk中,有一个全局变量:LOCAL_MULTILIB := 32它的值可以是32,64,both,表示可以编译的apk可以运行在32位、64位,或者32&64位硬件平台,因为支持multilib build,所以zygote的启动脚本.rc也有多个版本:init.zygote32.rcinit.zygote32_64.rc //支持32,64位系统,但是32原创 2018-02-05 22:42:14 · 2684 阅读 · 0 评论 -
Android进程-zygote进程
一,zygote进程zygote进程的父进程是init,zygote也是所有应用的父进程,也是system_server进程的父进程。 1.1 Zygote系统源码组成1) Zygote.java(frameworks/base/core/java/com/android/internal/os/)提供访问vm的zygote接口,主要是包装Linux系统的fork,以原创 2018-01-31 17:49:32 · 449 阅读 · 0 评论 -
Camera2(api2) 打开过程(一)
C++层log的输出,如果不全,可以调整log的级别:adb shell dumpsys media.camera -v 1 ,至少改成>=1。 Camera2 打开过程 public void onCreateTasks(Bundle state)@ CameraActivity.java{ mFirstRunDialog = new FirstRunDialog(this...原创 2017-08-02 17:00:54 · 7032 阅读 · 1 评论 -
camera2 (api2)打开预览过程(二)
使用camera的流程: openCamera() -> applySettings() -> setPreviewTexture() -> startPreview() ->autoFocus() -> takePicture()。打开camera设备的大致过程:1, 实例化CameraModule对象,即mCurrentModule表示当前的module,默认是...原创 2017-08-21 09:03:29 · 5684 阅读 · 0 评论 -
Android中的线程模型-ThreadPoolExecutor (十二)
上一篇 Android的线程模型:Android线程模型介绍了 Android中使用线程跟java中没有太多区别,只要继承Thread类或者实现Runnable接口就可以,只是这种实现方式要跟主线程通信需要通过message queue;另一种并行编程方法是AsyncTask,这是Android开发的专门简化多线程实现的类,可以不用繁琐的looper,handler等机制就可以与主线程通信,但是A...原创 2018-02-06 19:59:06 · 277 阅读 · 0 评论