
androd
不能止步
专注于分布式软件开发、云原先、敏捷实践等
展开
-
android原生代码中的情景模式及提示音和通知
如下介绍的是5.1平台中的设置应用中的情景模式及提示音和通知设置的界面:对应的java类:com.android.settings.SettingsActivity对应的xml文件:xml/dashboard_categories.xml情景模式:对应的java类:com.android.settings.profiles.ProfilesSettings对应的原创 2015-12-15 21:01:21 · 4366 阅读 · 0 评论 -
[问题]Android Studio3.1.2 Rejecting re-init on previously-failed class
问题log如下:10-22 15:18:32.130 29298 29298 I art : Rejecting re-init on previously-failed class java.lang.Class<com.qiscus.sdk.chat.core.QiscusCore$$Lambda$4>10-22 15:18:32.130 29298 29298 I...原创 2018-10-22 17:13:19 · 5762 阅读 · 0 评论 -
Fragment请求权限,回调到onRequestPermissionsResult后requestCode改变了
详细介绍了fragment中调用requestPermissions的代码处理流程,并介绍了requestCode在传递过程中的改变和恢复,以及为什么在自定义的Activity中的onRequestPermissionsResult需要调用父类的onRequestPermissionsResult及不调用后会产生的后果。原创 2018-10-17 18:28:57 · 5197 阅读 · 0 评论 -
Android单元测试
单元测试关于单元测试,在维基百科中,给出了如下定义:在计算机编程中,单元测试(英语:Unit Testing)又称为模块测试, 是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作。程序单元是应用的最小可测试部件。在过程化编程中,一个单元就是单个程序、函数、过程等;对于面向对象编程,最小单元就是方法,包括基类(超类)、抽象类、或者派生类(子类)中的方法。android中的单元测试...原创 2018-11-13 10:59:17 · 15266 阅读 · 6 评论 -
adb shell am start -a xx -d uri启动应用时uri中&后的参数没有了
问题复现场景在mac或windows 下执行如下命令:adb shell am start -a android.intent.action.VIEW -d "https://xxx?action=tab&tabname=offer"发现应用在接收到intent后,intent中的参数变为“https://xxx?action=tab”。问题原因adb shell相当于是在li...原创 2018-12-04 14:43:17 · 12076 阅读 · 3 评论 -
RecyclerView中使用LayoutInflater.inflate的流程分析及注意事项
在RecyclerView适配器中的onCreateViewHolder函数中一直使用LayoutInflater.inflate方法生成item view,但从没考虑过inflate的具体流程是什么样的,其各个参数具体如何起作用,今天来具体分析一下inflate的代码流程和参数的具体作用,以明确在使用RecyclerView过程中的注意事项。原创 2018-12-19 15:20:50 · 1850 阅读 · 0 评论 -
android dialog设置宽度占满屏幕的可靠方法
将Android Dialog宽度设置为屏幕宽度的两部方法,绝对可靠原创 2019-03-05 11:10:19 · 6669 阅读 · 0 评论 -
android FontMetrics中各个字段的意义
了解android FontMetrics中各个变量的意义以及android绘制字符串的方法才能清楚的知道如何将字符串绘制在视图的中间。转载 2019-03-01 22:24:41 · 603 阅读 · 0 评论 -
Android查看签名证书Hash指纹和应用签名
查看签名证书的指纹和应用签名原创 2019-03-13 22:35:05 · 4255 阅读 · 0 评论 -
adb常用命令
adb常用命令原创 2019-06-26 21:47:20 · 161 阅读 · 0 评论 -
Android之DuplicatingThread音频数据流
我们知道连接蓝牙下播放手机铃声,手机铃声是双出的,即会从speaker和蓝牙同时输出,其使用的回话线程即为DuplicatingThread,那么在Android中DuplicatingThread中的音频数据流是什么样的呢?实际上DuplicatingThread主要起到了回放线程管理和数据拷贝的作用,如下图所示。 1. AudioTrack到DuplicatingThread音频数据的传...原创 2018-07-13 23:24:14 · 3520 阅读 · 0 评论 -
SELinux syntax error问题定位
通过在SELinux的配置语句的汇总文件policy.conf中搜索编译过程中报的syntax error配置语句,并观察之前的配置语句,便可很容易定位出是哪个SELinux配置文件中的配置语句导致的问题,提高了SELinux syntax error问题的定位效率原创 2017-06-07 22:31:43 · 5662 阅读 · 0 评论 -
Service xxx does not have a SELinux domain defined
为了完成公司项目的一个需求,需要添加一个binder服务xxx,并且设置成开机自启动。于是我在init.rc中添加了如下代码行:service xxx /system/bin/xxx class main user root编译boot后烧到手机,发现服务xxx无法启动,kernel log中有如下提示:[ 20.076354s][pid:1,cpu7,init]init: Se原创 2017-06-06 23:19:46 · 17089 阅读 · 5 评论 -
android如何在C++中打印调用堆栈
android原代码中提供了打印堆栈的接口,具体调用如下:(1)包含头文件#include //该头文件位于/system/core/utils中(2)在需要打印堆栈的位置如下调用android:CallStack stack;stack.update();stack.log(LOGTAG); //其中LOGTAG为在log中显示的日志标签原创 2015-12-14 11:28:27 · 4618 阅读 · 0 评论 -
android如何使用adb命令查看数据库
前提:必须拥有root权限按如下步骤操作:(1)adb shell(2)cd /data/data/(3)cd com.android.providers.media(4)sqlite3 external.db(5)select * from files;(6)其他命令可以输入 .help命令进行查看原创 2015-12-14 10:58:36 · 607 阅读 · 0 评论 -
Android nice在进程与线程调度中的作用
基本概念:进程:计算机进行资源分配和高度的基本单位,是程序运行的实体,也是线程的容器。线程:是进程中实际执行的单元,是程序执行的最小单元,属于一个进程。一个进程可以拥有多个线程。nice在进程调试中作用在Android中,可以使用nice值来设定一个进程的优先级,系统的调度器可以根据nice值来合理的调度进程,主要特点如下:在Android中,nice的取值范围为-2...原创 2016-04-06 15:32:53 · 2688 阅读 · 0 评论 -
Android进程调度cgroups的简单介绍
cgroups的定义维基百科的解释为:cgroups,其名称源自控制组群(control groups)的简写,是Linux内核的一个功能,用来限制,控制与分离一个进程组群的资源(如CPU、内存、磁盘输入输出等)。Android中的cgroupsAndroid中的cgroups关于cpu的一般有两个,分别位于:dev/cpuctl/原创 2016-04-12 16:20:32 · 4633 阅读 · 1 评论 -
Android网络操作和优化相关
写在前面的话Android程序最重要的模块就是网络部分,如何从网络上下载数据,如何将处理过的数据上传至网络,往往是android程序的关键环节。前几天偶一朋友遇到这么一个问题:如何使用volley实现文件上传。最后问题解决了,小伙伴不禁有些飘飘然,大有一番天下之事皆逃不过我的魔掌的感觉。这时候coder君问了他几个问题,大家可以一起思考下:TCP/IP协议、SOCKET、HTTP协议、转载 2016-11-04 10:01:31 · 419 阅读 · 0 评论 -
Android中Drawable适配介绍
Android中Drawable适配介绍 Android可以运行在各种不同屏幕大小和密度的设备上,并且为不同的设备提供一致的开发环境。在不同设备上显示时,Android可以调整应用的UI悴适配不同的屏幕。此外,Android也提供了一些API可以针对不同的设备屏幕大小和密度来控制UI的显示。虽然Android可以针对不同的APP进行缩放和调整以适配不同的屏幕,但是我们仍然需要针对原创 2016-09-29 17:50:44 · 4123 阅读 · 0 评论 -
Android gdb调试
Android对于C/C++代码的调试方式一般选用gdb+gdbserver的方式,其中gdbserver运行在目标系统中(如手机),gdb运行在宿主机上(如linux)。gdb主要有以下几个功能:启动程序,可以按照自定义的要求随心所欲的运行程序可让被调试的程序在所指定的断点处停住(断点可以是条件表达式)当程序被停住时,可以检查此时程序中所发生的事动态的改变程序的执行环境1. 需要准备的东原创 2016-11-05 12:21:00 · 22759 阅读 · 8 评论 -
Robolectric导致JVM Crash
Robolectric导致JVM Crash的原因分析及解决方案原创 2019-07-11 11:49:58 · 377 阅读 · 0 评论