- 博客(12)
- 资源 (1)
- 收藏
- 关注
原创 自定义服务异常分析
在实际的工作中,有个Bug是关于插拔U盘无法弹出U盘插入的提示框。现象出现在机器使用一段时间之后。分析代码发现这个弹出框是通过一个后台service监听U盘的广播进行弹出处理。初步分析是该服务停止了。所以在代码里添加了打印当前所有运行服务 ActivityManager manager = (ActivityManager) getSystemService(ACTIVITY_SE
2016-11-11 15:06:51 420
原创 YunOS设置为默认Launcher的分析
前言:之前有段时间做过YunOS的版本开发,项目中需要尝试替换掉阿里Launcher,遂做了如下分析,权当是个记录。
2016-10-28 16:02:00 3388
原创 查找并替换文件内容-编译选项的修改
前言: 在实际的应用中,很容易出现的需求是通过Python来执行编译选项的替换工作,例如我现在想通过一个off/on 开关来控制文件test的sys.proj = true 这一行编译选项,在off的时候给它加上注释#,在on的时候去掉#,那么就可以通过以下python代码并在.sh中添加python replace.py on/off来实现替换工作。具体的代码如下:
2016-10-25 09:55:36 711
原创 如何修改Recovery的字符串资源(修改显示字体颜色和大小)
在上一篇文章《如何修改Recovery的字符串资源》中,主要是介绍了如何修改字符串资源的内容。在实际中,我们既可能需要修改字符串在UI中的字体颜色和字体大小。那么如何对Recovery进行修改呢?
2016-10-24 14:16:25 3962 3
原创 如何修改Recovery的字符串资源
前言:在实际的ROM修改中,Recovery的修改还是会经常遇到的,这篇文章主要讲解如何修改Recovery字符串。 首先我们先了解下大概的流程。1.screen_ui.cpp 中的ScreenRecoveryUI::Init() 负责加载基本资源信息。2.Init()调用 LoadLocalizedBitmap("installing_text",
2016-10-20 15:38:33 1877
原创 Android Tips:CursorAdapter 绑定 ListView后,List滚动CheckBox选中消失的问题
问题描述: 在CursorAdapter绑定ListView之后,如果List上有Checkbox,我们会监听onCheckChanged这个函数。 在实际的运用中会出现滚动list之前选中的项目,会自动触发onCheckChanged函数,导致选中项丢失。解决的办法: 在Bindview中设置CheckBox的时候调用如下语句:holder.check.set
2015-01-28 13:42:24 599
原创 Android Tips: 蓝牙和GPS的检测
工作中用到检测蓝牙和GPS蓝牙的检测需要用到的知识: BluetoothAdapter.ACTION_STATE_CHANGED 检测是否打开蓝牙设备 BluetoothAdapter.ACTION_CONNECTION_STATE_CHANGED 本来是检测链接状态的,但是无效 BluetoothDevice.ACTION_ACL_CON
2015-01-23 15:33:51 613
原创 Fragments 学习(一)
如果需要写一篇关于Fragments的文章,你会怎么写?关注哪些问题?1.Fragment是什么?2.Fragment在android开发中为何经常出现?3.Fragment 是解决什么问题的?4.Fragment 有哪些特性?5.最终的问题是对于Fragment我们应该如何掌握,也就是如何使用?对于一个android开发者,Fragment是一个常见的字眼
2015-01-14 17:57:42 472
原创 DownloadManager的应用小知识
在使用DownloadManager的时候,要防止多次下载的情况:后台清除任务,正在的下载任务并没有取消,再次下载就会发起一个新的进程下载。如此循环多次就会带跨整个系统。解决方法是: 在每次退出的时候,保存当前下载的Handle,然后在下次进入的时候,恢复该Handle对应的数据。这样就可以可以保持总是一个下载任务在执行。
2015-01-12 16:40:05 409
原创 关于LeetCode算法题,第一题
题目链接:https://oj.leetcode.com/problems/maximum-product-subarray/题目介绍:Find the contiguous subarray within an array (containing at least one number) which has the largest product.For example,
2015-01-07 11:36:46 489
原创 Android Tips: 寻找当前的Activity
通过如下的代码即可知道当前的活动Activity: public boolean isForeground(String PackageName){ // Get the Activity Manager ActivityManager manager = (ActivityManager) getSystemService(ACTIVITY_SERVICE); // Get a l
2014-12-19 10:47:37 408
原创 Android Tips: 如何判断所安装的应用是否为系统应用
在Andori的开发中,尤其的是launcher 的开发中需要判断一个已经安装的应用是否为系统应用。这里介绍一个好用的方法,代码如下:// Check if the apk is in system folder public boolean isSystemApk(int position) { if (position >= mList.size()) return false
2014-12-18 10:16:38 1066
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人