
Android基础
-
原创
Android源码分析--广播的注册、发送和接收
广播的注册、发送和接收过程 广播的注册、发送和接收都与AMS有着密不可分的关系。 广播的注册 广播的注册可分为静态注册和动态注册两种,静态注册在应用安装时由PackageManagerService来完成注册过程,下面我主要来分析动态广播注册。 ContextImpl请求AMS注册广播 当我们需要动态注册广播时,需要调用Context的registerReceiver方法,然后在Co...2019-11-14 01:02:49 阅读数 28 评论数 0 -
原创
Android源码分析--Service的启动和绑定
Service的启动过程 Service的启动和根Activity的启动很类似。Service的启动同样需要保证该应用程序的进程已经被启动。 启动大纲 ContextImpl请求AMS启动Service. AMS请求ActivityThread启动Service. ContextImpl请求AMS启动Service 当我们需要启动一个Service时,我们会使用contex...2019-11-14 00:54:06 阅读数 17 评论数 0 -
原创
Android应用商店上架技巧(企业版)
Android应用商店上架技巧(企业版) 说老实话,这些年随着Android系统的逐渐成熟,各大应用市场对Android应用的上架审核也越加严格,因此在上架应用之前,还是要做好准备工作的,不然审核被打回数次都是有可能的。 目前比较常用的几个Android应用市场的链接 以下是按照上架的难易程度进行排序的,三星应用商店上架最困难,oppo应用商店上架最容易(个人观点): 三星应用商店 应...2019-09-01 11:17:41 阅读数 452 评论数 0 -
转载
Android Theme
常用的theme项 <style name="BaseTheme" parent="Theme.AppCompat.Light.NoActionBar"> <!--主色--> <item name="colorPrimary">@color/theme_primary</item> <!--深色主色--> ...2019-05-11 23:30:07 阅读数 53 评论数 0 -
原创
Android源码分析--应用程序启动
应用程序的启动,又可称为根Activity的启动。但是在讲应用程序启动之前,我们有必要对应用程序进程(AppProcess)启动有所了解,那是因为启动一个应用程序首先要保证该应用程序的进程已经被启动。AMS在启动应用程序时,会先检查应用程序进程是否存在,如果不存在就需要请求Zygote进程创建并启动应用程序进程。这里我不会贴上大段大段的代码,只是一些总结,并提供了相关源码的链接。 应用程序进程...2019-02-24 18:31:48 阅读数 667 评论数 0 -
原创
Android源码分析--Android系统启动
Android系统启动 其实Android系统的启动最主要的内容无非是init、Zygote、SystemServer这三个进程的启动,他们一起构成的铁三角是Android系统的基础。 启动大纲 启动电源以及引导程序加载 引导程序BootLoader启动 Linux内核启动 init进程启动 Zygote进程启动 SystemServer进程启动 Launcher启动 启动流程图 启动...2019-02-22 16:47:27 阅读数 114 评论数 0 -
原创
使用NDK和Android.mk进行JNI开发
使用NDK和Android.mk进行JNI开发 项目地址 1.编写native接口和C/C++代码 定义native接口 package com.xuexiang.jnidemo; public class JNIApi { public native String stringFromJNI(); } 编写C/C++代码 extern &quot;C&quot; JNIEXPORT jstring J...2018-12-04 01:42:28 阅读数 1083 评论数 5 -
原创
如何隐藏Android模拟器的虚拟按键
在我们做屏幕适配的时候,就务必需要使用模拟器进行适配。但是在编辑的过程中,总是发现令人恶心的黑不溜秋的虚拟按键,很影响我们进行屏幕适配,如下图: 那么如何才能如掉这个虚拟按键呢? 原理:修改system下的build.prop文件内的参数 操作如下: 1.找到指定的AVD模拟器的配置文件,一般路径如下: [用户根目录]/.android/avd/ [模拟器名字].avd/config.ini ...2018-11-13 15:30:21 阅读数 1641 评论数 3 -
原创
JNI开发环境和基础配置
JNI开发环境和基础配置 开发环境 JNI:Java Native Interface(Java 本地编程接口),一套编程规范,它提供了若干的 API 实现了 Java 和其他语言的通信(主要是 C/C++)。Java 可以通过 JNI 调用本地的 C/C++ 代码,本地的 C/C++ 代码也可以调用 java 代码。Java 通过 C/C++ 使用本地的代码的一个关键性原因在于 C/C++ 代...2018-10-17 18:08:53 阅读数 142 评论数 0 -
原创
基础JNI语法和常见使用
基础JNI语法 基础类型 Java类型 native类型 描述 boolean jboolean unsigned 8 bits byte jbyte signed 8 bits char jchar unsigned 16 bits short jshort signed 16 bits int jint signed 32 bits long jlong s...2018-10-17 18:03:17 阅读数 156 评论数 0 -
原创
Android开发性能优化大总结
Android相关 采用硬件加速,在androidmanifest.xml中application添加android:hardwareAccelerated=“true”。不过这个需要在android 3.0才可以使用。android4.0这个选项是默认开启的。 View中设置缓存属性.setDrawingCache为true. 优化你的布局。通过Android sdk中tools目录下的lay...2018-10-19 10:42:19 阅读数 72 评论数 0 -
转载
AndroidStudio 进行 JNI / NDK 开发:初步配置及使用
版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/zeqiao/article/details/77893167 说干就干! JNI:Java Native Interface(Java 本地编程接口),一套编程规范,它提供...2018-10-15 10:57:58 阅读数 61 评论数 0 -
原创
常用的ADB命令
指令 作用 备注 adb devices 查看已连接的设备列表 adb connect [IP] 连接设备 [IP]为连接设备的ip地址。 adb disconnect [IP] 断开设备 [IP]为断开设备的ip地址。 adb install -r [apk的路径] 安装apk -r 代表如果apk已安装,重新...2018-07-13 10:43:28 阅读数 1481 评论数 0 -
转载
ADB 常用命令及详解
转自:https://blog.csdn.net/zhcswlp0625/article/details/53889187 ADB 即 Android Debug Bridge,Android调试桥。ADB工作方式比较特殊,采用监听Socket TCP 端口的方式让IDE和Qemu通讯,默认情况下adb会daemon相关...2018-07-03 11:58:13 阅读数 193 评论数 0