android
jamikabin
这个作者很懒,什么都没留下…
展开
-
Android targetSdkVersion 17 @JavascriptInterface
targetSdkVersion 是设置希望的SDK版本,如果设置了此属性,那么在程序执行时,如果目标设备的API版本正好等于此数值,他会告诉Android平台:此程序在此版本已经经过充分测,没有问题。不必为此程序开启兼容性检查判断的工作了。也就是说,如果targetSdkVersion与目标设备的API版本相同时,运行效率可能会高一些。 但是,这个设置仅仅是一个声明、一个通知,不会有太实转载 2015-09-08 22:27:46 · 961 阅读 · 0 评论 -
深入理解Activity启动流程(三)–Activity启动的详细流程1
本篇博客将开始介绍Activity启动的详细流程,由于详细启动流程非常复杂,故此分成两篇来介绍。本篇主要介绍前半部分的启动流程:Activity调用ActivityManagerService启动应用ActivityManagerService调用Zygote孵化应用进程Zygote孵化应用进程 下篇介绍后半部分的启动流程:新进程启动ActivityThread应用进程绑定到Activi转载 2016-12-22 21:10:34 · 444 阅读 · 0 评论 -
深入理解Activity启动流程(三)–Activity启动的详细流程2
上篇博客介绍了Activity详细启动流程的前半部分:Activity调用ActivityManagerService启动应用ActivityManagerService调用Zygote孵化应用进程Zygote孵化应用进程 本篇博客主要介绍Activity详细启动流程的后半部分:新进程启动ActivityThread应用进程绑定到ActivityManagerServiceActivi转载 2016-12-22 21:32:59 · 634 阅读 · 0 评论 -
深入理解Activity启动流程(四)–Activity Task的调度算法
前面两篇博客介绍了Activity的详细启动流程,提到ActivityStack类的startActivityUncheckedLocked方法负责调度ActivityRecord和Task,并且调度算法非常复杂,需结合实际场景分析调度算法。本篇博客将介绍startActivityUncheckedLocked方法的具体实现,本结合实际场景分析调度算法。startActivityUncheckedL转载 2016-12-22 21:38:41 · 708 阅读 · 0 评论 -
Android 7.0 SystemUI Recent浅析
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~最近Task模块Recents extends SystemUIstart进行初始化~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~BaseStatusBar中如下函数显示最近task protected void toggleRecents() {原创 2016-12-20 17:52:58 · 5619 阅读 · 0 评论 -
Android WindowManagerService相关的Session
本文基于Android7.0Session类路径framework/base/services/core/java/com/android/server/wm/Session.java内容final class Session extends IWindowSession.Stub implements IBinder.DeathRecipient { final Windo原创 2017-01-13 19:50:32 · 1532 阅读 · 0 评论 -
Android SurfaceSession
Android SurfaceSession原创 2017-01-13 20:24:58 · 1190 阅读 · 0 评论 -
WindowManager addView
首先WindowManager是怎么获取的WindowManager mWindowManager = Context.getSystemService(WindowManager.class);可以通过这种方式给Activity add一个view 接着找到WindowManager和其他两个类的关系public final class WindowManagerImpl implements原创 2017-01-13 22:56:46 · 3287 阅读 · 0 评论 -
如何使用Design Support Library提供的FloatingActionButton
Android Studio中app/build.gradle追加dependenciesdependencies { compile 'com.android.support:design:25.1.0'}layout中追加如下控件 <android.support.design.widget.FloatingActionButton android:id="@+i原创 2017-01-12 14:54:32 · 528 阅读 · 0 评论 -
Android Support Repository版本号
本文参考: https://developer.android.com/topic/libraries/support-library/setup.html首先要使用support library,就要通过android sdk manager下载 Android Support Repository下载后的本地路径如下 /extras/android/m2repository/com/and原创 2017-01-12 17:39:51 · 10574 阅读 · 0 评论 -
Android AIDL
Android AIDL是Android一个进程间通信的机制 IPC (Inter Process Communication,进程间通信)AIDL的使用 1. 写一个aidl文件,例如aaa.aidl 2. 服务器端和客户端各放一份 3. 服务器端(Bn)要实现ServerAAA extends aaa.Stub 4. ServerAAA中会实现具体的功能供客户端调用 5. 客户原创 2017-01-13 21:13:12 · 300 阅读 · 0 评论 -
关于android:sharedUserId
作用是多个app进程共享数据多个app设置成相同的user idandroid:sharedUserId=“android.uid.system” 系统级进程android:sharedUserId=“com.example” 普通共享app具体参考如下文章:https://blog.csdn.net/jiangwei0910410003/article/details/51316688...原创 2019-01-05 15:20:58 · 1161 阅读 · 0 评论 -
深入理解Activity启动流程(二)–Activity启动相关类的类图
在介绍Activity的详细启动流程之前,先为大家介绍Activity启动时涉及到的类,这样大家可以有大概的了解,不至于在细节中迷失。Activity启动时涉及到的类有IActivityManager相关类, IApplicationThread 相关类, ActivityManagerService 相关类。IActivityManager相关类 Activity的管理采用binder机制,管理转载 2016-12-22 20:55:08 · 555 阅读 · 0 评论 -
深入理解Activity启动流程(一)–Activity启动的概要流程
**概述**Android中启动某个Activity,将先启动Activity所在的应用。应用启动时会启动一个以应用包名为进程名的进程,该进程有一个主线程,叫ActivityThread,也叫做UI线程。本系列博客将详细阐述Activity的启动流程,这些博客基于Cm 10.1源码研究。Activity启动时的概要交互流程用户从Launcher程序点击应用图标可启动应用的入口Activity,Act转载 2016-12-22 20:45:13 · 460 阅读 · 0 评论 -
IActivityManager ActivityManagerNative ActivityManagerService之间如何进行工作
总结:IActivityManager调用函数最终会调用ActivityManagerService中的对应实现IActivityManager 定义的接口。 app侧的proxy <—->ActivityManagerProxy 比如IActivityManager定义接口startActivityFromRecentsclass ActivityManagerProxy implements原创 2016-12-21 15:59:47 · 3539 阅读 · 1 评论 -
[转]Android ANR 分析解决方法
一:什么是ANRANR:Application Not Responding,即应用无响应二:ANR的类型ANR一般有三种类型:1. KeyDispatchTimeout(5 seconds) --主要类型按键或触摸事件在特定时间内无响应2. BroadcastTimeout(10 seconds) --BroadcastReceiver在特定时间内无法处理转载 2015-11-05 11:38:24 · 595 阅读 · 0 评论 -
Android中资源限定符hdpi large等的优先顺序和匹配关系
Android中资源限定符hdpi large等的优先顺序和匹配关系转载 2016-01-19 12:26:59 · 3264 阅读 · 0 评论 -
android 六个主要密度之间的缩放比
android 六个主要密度之间的缩放比翻译 2016-01-19 13:47:50 · 995 阅读 · 0 评论 -
系统默认的size和density
系统默认的size和density转载 2016-01-19 15:06:49 · 803 阅读 · 0 评论 -
android4.0手机访问某些网页提示证书过期或者证书不符的处理办法
有些时候用手机浏览器访问某些网址会提示证书过期 或者app需要访问某些网址也会因为证书过期导致无法访问 那么如果解决呢?首先你的android手机必须是4.0以上系统的 Settings -> Security -> Certificates 可以看到当前已经存在的系统证书和用户导入证书如果一个网站依赖证书的话应该都是https的 android app如果访问这个网站也需要一样的证书原创 2016-02-05 17:42:39 · 8786 阅读 · 0 评论 -
Android 获取屏幕尺寸
Android 获取屏幕尺寸原创 2016-01-29 00:06:51 · 1428 阅读 · 0 评论 -
如何将随机生成的安卓手机mac地址改为固定
进入re管理器,路径为/data/nvram/APCFG/,这个WIFI文件就是了。想办法将这个文件拷贝到电脑 然后用WinHex修改如下图中几个数字为固定mac地址即可修改后保存文件并传回手机,手机重启后Mac地址变成固定转载 2016-02-06 12:02:19 · 13810 阅读 · 0 评论 -
Module won't show up in “Edit Configuration”
Module not specified使用android studio时,出现程序无法运行,手动添加run configuration时也无法找到module时 可以查看主程序的build.gradle Make sure your build.gradle isapply plugin: ‘com.android.application’ notapply plugin: ‘com.and原创 2016-08-08 20:41:51 · 748 阅读 · 0 评论 -
Implicit declaration of function 'inet_addr' is invalid in C99
inet_addr implicit declaration原创 2016-11-21 22:37:30 · 6624 阅读 · 0 评论 -
android layout_gravity
android:layout_gravity=”0x37” 意思就是 android:layout_gravity=”top|fill_horizontal”Gravity类提供的常量列表如下: NO_GRAVITY Constant Value: 0 (0x00000000) LEFT原创 2016-12-08 14:22:44 · 759 阅读 · 0 评论 -
Android Studio卡顿
以下内容来自网址:https://www.zhihu.com/question/32282404罗森75 人赞同Android Studio 2.0 以下:每次升级/安装 Android Studio 之后最好都修改一下这个参数:到 Android Studio 安装目录,找到 bin/studio(64?).vmoptions(文件名可转载 2016-12-10 01:10:25 · 866 阅读 · 0 评论 -
签名系统apk命令
java -jar out/host/linux-x86/framework/signapk.jar build/target/product/security/platform.x509.pem build/target/product/security/platform.pk8 input.apk output.apk原创 2019-01-11 17:36:38 · 565 阅读 · 0 评论