1. *.apk文件 APK是Android Package的缩写,即Android安装包.通过将APK文件直接传到Android模拟器或Android手机中执行即可安装. 使用Android打包工具(aapt)将DEX文件,资源文件以及AndroidManifest.xml文件组合成一个应用程序包(APK).Dex是Dalvik VM executes的全称,即Android Dalvik执行程序. META-INF\ Jar文件 res\ 存放资源文件 AndroidManifest.xml…
树莓派3 Android TV安装APK应用教程 本文摘自:http://www.mz6.net/news/android/6867.html 树莓派3 Android TV怎样安装软件?对于熟悉ADB的网友来说安装过程并不复杂,通过ADB远程连接到树莓派,然后使用ADB命令安装应用,当然小白也可以按照下面的教程学会怎样安装应用. 树莓派3安装Android TV系统图文教程 http://www.mz6.net/news/android/6865.html 树莓派3安装APK应用教程 1.首先…
本文博客地址:https://blog.csdn.net/QQ1084283172/article/details/80982869 Android系统在启动时安装应用程序的过程,这些应用程序安装好之后,还需要有一个Home应用程序来负责把它们在桌面上展示出来,在Android系统中,这个默认的Home应用程序就是Launcher了.Android系统的Home应用程序Launcher是由ActivityManagerService启动的,而ActivityManagerService和Pack…
问题:使用adb pull命令从android系统中读取文件失败.显示:Permission denied   原因:是由于文件权限原因引起.       使用ls -l命令查看android系统中的文件权限为:     -rw-rw---- app_51   app_51     也就是说,该文件只有app_51用户以及app_51群组拥有读写权限,而adb shell的用户为shell,既不是app_51用户,也不在app_51群组中,所以没有权限读取这个文件.所以就出现了     Perm…
在android系统中运行jar操作步骤: 1.       打包编译jar包 2.       将jar包导入android设备中 adb push test.jar  /data/local/tmp     //将PC端编译好的jar包push到android设备中的/data/local/tmp目录下 3.       设置CLASSPATH export CLASSPATH=/data/local/tmp/apt.jar 4.       启动jar app_process /data/…
在Android系统中,广播(Broadcast)是在组件之间传播数据(Intent)的一种机制:这些组件甚至是可以位于不同的进程中,这样它就像Binder机制一样,起到进程间通信的作用:本文通过一个简单的例子来学习Android系统的广播机制,为后续分析广播机制的源代码作准备. 在Android系统中,为什么需要广播机制呢?广播机制,本质上它就是一种组件间的通信方式,如果是两个组件位于不同的进程当中,那么可以用Binder机制来实现,如果两个组件是在同一个进程中,那么它们之间可以用来通信的方式…
小知识:什么是build.prop?   /system/build.prop 是一个属性文件,在Android系统中.prop文件很重要,记录了系统的设置和改变,类似於/etc中的文件.这个文件是如何生成的呢? build/tools/buildinfo.sh 脚本就是专门用于生成build.prop文件 build/core/Makefile中使用build/tools/buildinfo.sh 脚本生成build.prop文件, 并把系统默认的system.prop以及定制的system.…
小知识:什么是build.prop?   /system/build.prop 是一个属性文件,在Android系统中.prop文件很重要,记录了系统的设置和改变,类似於/etc中的文件.这个文件是如何生成的呢? build/tools/buildinfo.sh 脚本就是专门用于生成build.prop文件 build/core/Makefile中使用build/tools/buildinfo.sh 脚本生成build.prop文件, 并把系统默认的system.prop以及定制的system.…
本文转载自:http://blog.csdn.net/mu0206mu/article/details/7514559 在Android系统中修改android.mk使其同时编译rgb2565和rgb2888(向out/host/Linux-x86/bin/下新增加一个工具命令)                       修改对应的Android.mk文件使其在源码编译时能够同时编译出rgb2565和rgb2888,rgb2888的源码文件已有,其实实现很简单,这里只是将我在具体测试中不同模块…
android系统中对ffmpeg封装最好的免费SDK; 无论个人还是公司,都免费商用, 欢迎下载. https://github.com/LanSoSdk/LanSoEditor_common 可能是android系统中对ffmpeg封装最好的免费SDK; 主要特点:  -  增加 H264硬件编码器 和 H264硬件解码器,  处理速度极大提升;  -  增加40多个常见方法,编写各种辅助处理类.  -  SDK已运行二年左右,商用APP200+.  免费策略:-  此SDK已运行二年左右,…
Android系统中的6种模式 1:一般启动模式(normal mode):    功能是正常启动手机,方法为关机状态下按电源键启动. 2:安全模式(safe mode):    此模式和正常启动一样,但没有登记Google,所以不能访问Market或使用你的Google账号.操作方法为按住“menu”键,按电源键启动手机,直至手机启动完成松开“menu”键. 3:恢复模式(recovery mode)     可打开命令解释程序(shell),刷新映像文件(flash image),执行备份等…
如:在frameworks/opt/net/ims/src/java/com/android/ims/ImsManager.java if (SystemProperties.get("persist.mtk_dynamic_ims_switch").equals("1")) { 我们想知道系统中persist.mtk_dynamic_ims_switch的值是多少,可以用如下方法 adb shell 进入android文件系统中: shell@GF179:/ $…
转自:http://blog.csdn.net/yao_guet/article/details/6531241 在android系统中,有一些初始化的配置文件,例如: /init.rc /default.prop /system/build.prop 文件里面里面配置了开机设置的系统属性值, 这些属性值,可以通过getprop获取,setprop设置, 它的格式如下: getprop [key] 获取指定key的配置值,如果不带参数,只是getprop则是显示系统所有的配置值. [dalvik…
AIDL,Android Interface definition language的缩写,它是一种android内部进程通信接口的描述语言,通过它我们可以定义进程间的通信接口.最近看了下AIDL在Android系统中的用法,在网上看到很多初学的朋友不太明白AIDL的实际作用,android提供了很多进程间通信的组件,像action.broadcast.contentprovide都可以实现进程间的通信,为什么还要用AIDL这个东西呢?我在android源码中实现了一个自己写的AIDL例子,用以…
由于是浅析,所以我只分析常用的接口,注意是Android系统中的JAVA类,可能和JDK的源码有区别. 首先从构造函数开始, /** * Min capacity (other than zero) for a HashMap. Must be a power of two * greater than 1 (and less than 1 << 30). */ private static final int MINIMUM_CAPACITY = 4; /** * Max capacity…
android系统中DP和SP的转化:1.首先分析TypedValue.java 可以调用以下代码获得dp的值 TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 20,getResources().getDisplayMetrics()); public static float applyDimension(int unit, float value,DisplayMetrics metrics) { switch (unit) {…
Android系统中TextView默认显示中文时会比较紧凑,不是很美观.为了让每行保持一定的行间距,可以设置属性android:lineSpacingExtra或android:lineSpacingMultiplier. 关于Android下TextView中文换行问题,可查看Android自定义view-文本自动换行. 1.android:lineSpacingExtra设置行间距,如”3dp”. 2.android:lineSpacingMultiplier设置行间距的倍数,如”1.2″…
android系统中如何通过程序打开某个AccessibilityService(系统辅助服务)? 通常的做法是注册AccessibilityService(辅助服务)后跳转到设置启动服务页面引导用户手动将我们创建的AccessibilityService开启.但是很多android系统过段时间会自动将AccessibilityService关闭掉.请教大神们,怎么让我们创建的AccessibilityService常驻不被关掉,或者关闭掉能通过我们的程序自己打开. adb  shell  命令…
1.关于Android系统中不同的定位模式 Android系统中包括3中定位模式:   使用GPS.WLAN和移动网络 使用WLAN和移动网络 仅使用GPS 截图 特点 同时使用GPS.WIFI及基站定位,速度快.精度高,室内定位效果好. 缺点:耗流量.耗电量 只使用WIFI和基站定位,需要WIFI或者基站才行,室内效果好. 缺点:依赖WIFI或基站,精度一般 不依赖WIFI和基站,室内效果差,户外可靠性好. 缺点:室内效果差 代码 LocationManager.GPS_PROVIDER =…
区别一:dvm执行的是.dex格式文件  jvm执行的是.class文件   android程序编译完之后生产.class文件,然后,dex工具会把.class文件处理成.dex文件,然后把资源文件和.dex文件等打包成.apk文件.apk就是android package的意思. jvm执行的是.class文件. 区别二:dvm是基于寄存器的虚拟机  而jvm执行是基于虚拟栈的虚拟机.寄存器存取速度比栈快的多,dvm可以根据硬件实现最大的优化,比较适合移动设备. 区别三:.class文件存在很…
关于Android的热修复与插件化技术在如今基本上已经成为了“时髦技术”的标配了,或者说用来进行“炫技”的一种方式,毕境如今Android已经发展得非常之成熟了,基本上APP用的到东东都差不多,除了业务不同之外,但是!对于热修复与插件化并不是每个公司或者每个程序员愿意去应用到商用项目上的,因为既使不加它貌似对传统APP的开发也木有啥影响,毕境加它还是有些繁锁的,而不管有没有在商用APP上去集成过它们,并不影响它被众多开发者所追捧,如今去面个试我想被问到热修复与插件化相关的技术问题应该只多不少,而…
阿里P7移动互联网架构师进阶视频(每日更新中)免费学习请点击:https://space.bilibili.com/474380680 Class文件 Class文件是Java虚拟机定义并被其所识别的文件格式,通俗地讲,每一个接口或者类对应一个Class文件. Class文件格式 Class文件是一组以8位字节为基础单位的的二进制流. 各数据项目之间没有任何分隔符 Class文件格式采用的结构只有两种数据结构:无符号数和表. 无符号数:以u1,u2等表示1,2个字节的无符号数,无符号数可用于描述…
转自:http://blog.csdn.net/yabg_zhi_xiang/article/details/51727844 在SettingsProvider中设置系统中默认值,我们可以在frameworks\base\packages\SettingsProvider\res\values\default.xml文件中看到常用的一些默认值,这次我就来详细解释下这里面默认的意义.当然,这不是全部的默认值,全部默认值得定义要在frameworks\base\core\java\android\…
最近一直在做有关内存方面的优化工作,在做优化的过程,除了关注内存的申请量以及GC的情况之外,我们经常需要想方法找出是那些对象占用了大量内存,以及他们是如何导致GC的,这意味着我们需要获取对象申请的信息(大小,类型,堆栈等),我们这篇文章来介绍下几种获取对象申请信息的方法 Allocation Trakcer Allocation Tracker是android studio自带的一个功能,我们可以在MemoryMonitor中打开使用: 如上图,点击红框按钮,然后操作app,开始allocati…
Android系统用于Activity的标准Intent 1.根据联系人ID显示联系人信息= Intent intent=new Intent(); intent.setAction(Intent.ACTION_VIEW);//显示联系人信息 intent.setData(Uri.parse("content://contaccts/people/492")); startActivity(intent); 2.根据联系人ID显示拨号面板 Intent intent=new Inten…
本篇文章讲解 system.img 是什么东西,以及它的打包和解包方式 system.img 是什么 system.img 是 Android 系统中用来存放系统文件的镜像 (image) ,文件格式为 yaffs2 或者 ext 的文件系统 ,在 Android 源码编译后会生产该文件.它将被 init 进程通过解析 init.rc 文件挂载 (mount) 到 /system 目录或者说 system 分区下 如何制作 system.img 使用下面的命令来即可制作一个 system.img…
Android 刷机过程中 Fastboot 和 Recovery 的作用是什么? 自己在知乎的一篇回答,,现在翻出来放到博客,希望可以解答更多人的疑惑,抑或有什么理解上的错误,也望网友指出~ 今天恰好和同事讨论了下Fastboot.在我看来提问者首先应该了解Fastboot和Recovery在安卓系统中的扮演什么角色,我们再去讨论它们在刷机过程中的作用. 首先来说下Fastboot的功能吧,Fastboot一般由boot和loader两个模块组成,boot负责安卓设备上电后初始化一些最基本的参…
应用中关于数据的持久化保存,不管是简单的SharedPreferences还是数据库SQLiteDatabase,本质上都是将数据保存到系统的某种类型的文件中.因此可以直接使用java.io.File文件类将数据以任意类型存取. 在获取到File文件类的对象后,就可以使用其相关方法执行对文件的读写等相关操作,这部分属于Java语言开发或Kotlin语言开发的基础知识,不再多言.而在Android系统上因为各种原因,获取File对象的方式有所区别,本文将重点介绍. 这里需要注意,File文件类不仅…
在上篇文章了解到应用级文件只能被其所创建的应用程序所访问,那么其他应用程序是不是就无论如何都无法访问了呢?肯定不是的,只要文件经过其创建的应用程序授权,还是可以被其他应用程序所访问的.这也就是应用级文件的共享. 系统只允许共享包含实际数据的纯文件类型,而不推荐共享包含文件的目录类型. 对于文件的访问可以使用java.io.File系统文件类,但是如果想将该文件分享出去,则需要借助android.net.Uri路径定位符类.Uri类是Android系统下自定义的路径定位符规则,其符合Java中定义…
在项目中碰到这样的问题: 由于系统中的按键在底层做了重新定义或者新增了按键,此时需要在APP层对按键事件(keyevent)做分解处理,模拟Android系统做法,把keyevent分解成: 1.单击事件:就是普通key的单击: 2.双击事件:500ms内同一按键单击两次: 3.长按事件:同一按键长按超过1000ms(系统中长按事件为500ms): 4.组合按键:两个以上按键同时按住: 其中的keyevent可以来自Activity.View子类的dispatchKeyEvent方法,也可以是我…