system
文章平均质量分 65
andylao62
这个作者很懒,什么都没留下…
展开
-
Android内存泄漏就这样产生了
1.资源对象没关闭造成的内存泄漏描述:资源性对象比如(Cursor,File文件等)往往都用了一些缓冲,我们在不使用的时候,应该及时关闭它们,以便它们的缓冲及时回收内存。它们的缓冲不仅存在于java虚拟机内,还存在于java虚拟机外。如果我们仅仅是把它的引用设置为null,而不关闭它们,往往会造成内存泄漏。因为有些资源性对象,比如SQLiteCursor(在析构函数finalize转载 2013-03-05 18:03:48 · 848 阅读 · 0 评论 -
Android常用命令操作(继续更新)
应用程序的命令adb shell procrank注:VSS - Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)RSS - Resident Set Size 实际使用物理内存(包含共享库占用的内存)PSS - Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)USS -原创 2013-02-27 10:06:21 · 1080 阅读 · 0 评论 -
android 手机ROM的分区说明
1、查看分区情况adb shell su #获得ROOT权限 cat /proc/mtd 查看分区情况dev: size erasesize namemtd0: 00040000 00020000 "preloader"mtd1: 000c0000 00020000 "dsp_bl"mtd2: 00300000 00020000 "nvram"原创 2012-11-05 18:26:51 · 1936 阅读 · 0 评论 -
如何预置APK
[DESCRIPTION]1, 如何将带源码的 APK预置进系统?2, 如何将无源码的APK预置进系统?3, 如何预制APK使得用户可以卸载?4, 如何使得用户在将预置的 APK卸载后,恢复出厂设置时能恢复?[SOLUTION]一、如何将带源码的APK预置进系统?1) 在packages/apps下面以需要预置的 APK的名字创建一个新文件夹,以预制一个名为原创 2013-01-03 12:08:19 · 1245 阅读 · 3 评论 -
如何单独 build recovery image
./makeMtk mm bootable/recovery/./makeMtk r kernel./makeMtk -opt=ONE_SHOT_MAKEFILE=build/target/board/Android.mk r recoveryimage原创 2013-03-26 16:01:48 · 1381 阅读 · 0 评论 -
如何搭建modem编译环境
[DESCRIPTION](1)MT6577以及之前的chip平台(如MT6575,73等) 的modem编译环境和MTK的Feature Phone的编译环境一样,即Windows+RVCT(2)从MT6589开始,modem编译环境已经切换到Linux OS + GCC [KEYWORD]modem编译 [SOLUTION] (1)MT6577以及之前的原创 2013-01-25 10:56:13 · 3312 阅读 · 0 评论 -
添加多个jar文件
LOCAL_PATH:= $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE_TAGS := optionalLOCAL_STATIC_JAVA_LIBRARIES := libAndroid libAndroid2LOCAL_SRC_FILES := $(call all-java-files-under, src)LOCAL_PA原创 2013-05-24 10:33:55 · 668 阅读 · 0 评论 -
Android系统默认音量
默认音量frameworks\base\media\java\android\media\AudioManager.java /** @hide Default volume index values for audio streams */ public static final int[] DEFAULT_STREAM_VOLUME = new int原创 2013-05-29 11:13:04 · 4191 阅读 · 0 评论 -
编译banyan_addon出错
错误error: GL/glx.h: No such file or directory解决办法sudo apt-get install libgl1-mesa-dev原创 2013-05-30 18:09:47 · 1039 阅读 · 0 评论 -
锁屏壁纸会变大
第一次开机时锁屏壁纸会变大,是由于还没读到屏幕的像素导致的,解决办法方法1、WallpaperManager wallpaperManager = WallpaperManager.getInstance(mContextk);wallpaperManager.suggestDesiredDimensions(getResources().getDisplayMetrics().wid原创 2013-05-31 17:31:40 · 1593 阅读 · 0 评论 -
默认开启USB连接调试
system.proppersist.service.adb.enable=1原创 2013-06-13 19:43:31 · 1905 阅读 · 0 评论 -
项目中缩写对应名称
$project:项目名称,比如***75$platform:平台名称,比如mt6577,mt6575$(PRODUCT_OUT):out/target/product/$project/$(HOST_OUT)/:out/host/linux-x86/原创 2013-06-21 15:21:00 · 1657 阅读 · 0 评论 -
JAVA层如何获取SN(barcode)号
[DESCRIPTION] 在java里获取SN号的接口。 [SOLUTION] 在JB.MP中获取SN的方法: 在GSMPHONE.JAVA里有一个EVENT_GET_BARCODE_NUMBER,可以获取当前手机的sn号。 这支文件的路径如下:/alps/frameworks/base/telepho原创 2013-09-12 10:17:42 · 3673 阅读 · 0 评论 -
Android 系统属性SystemProperty分析
Android System Property一 System Property 代码中大量存在:SystemProperties.set()/SystemProperties.get();通过这两个接口可以对系统的属性进行读取/设置,顾名思义系统属性,肯定对整个系统全局共享。通常程序的执行以进程为单位各自相互独立,如何实现全局共享呢?System Propert转载 2013-09-24 14:00:04 · 717 阅读 · 0 评论 -
我来解释一下什么是ROOT以及原理
是不是要ROOT,是一个“大是大非”的问题,本文简单介绍一下什么是ROOT,ROOT的原理又是什么。一,什么是ROOT?在操作系统中,一般会把用户分成两种,一是管理员,二是用户。这里的管理员,指的是可以修改操作系统中的一切,并切可以进行任何甚至毁灭性操作的角色;比如,windows下的管理员可以删除记事本程序,但普通用户就不可以了。。。早期的XP基本上这两个概念不明显,也是转载 2013-10-28 17:04:54 · 1500 阅读 · 0 评论 -
查看系统信息
getprop 查看机器的全部信息参数getprop ro.serialno 查看机器的SN号getprop ro.carrier 查看机器的CID号getprop ro.hardware 查看机器板子代号getprop ro.bootloader 查看SPL(Hboot)版本号“ro.hardware”属性的属性值是在系统启动时由init进程负责设置的。它首先原创 2013-11-01 11:03:14 · 1107 阅读 · 0 评论 -
GPU
1、kernel\drivers\base\cpu.c int __init cpu_dev_init(void){int err;err = sysdev_class_register(&cpu_sysdev_class);#if defined(CONFIG_SCHED_MC) || defined(CONFIG_SCHED_SMT)if (!err)原创 2013-06-17 15:03:49 · 816 阅读 · 0 评论 -
ThreadPoolExecutor使用介绍
private static ExecutorService exec = new ThreadPoolExecutor(8, 8, 0L,TimeUnit.MILLISECONDS, new LinkedBlockingQueue(100000),new ThreadPoolExecutor.CallerRunsPolicy());一、简介 线程池类为 java.ut转载 2014-01-10 14:06:02 · 781 阅读 · 0 评论 -
【NvRAM】apk中中读写nvram
nvram中LID对应的结构体如:typedef struct{ int uid;} NVRAM_AMOI_TEST_STRUCT; demo code: //将int型转化成byte数组 private static byte[] getBytes(int data){ byte[] bytes = new byt原创 2014-02-19 20:07:44 · 5292 阅读 · 6 评论 -
不同分辨率的LCM进行兼容
1.读取不同LCM ID的时序不同,如何处理?2.开机后android会自动resize图片资源的大小,但开机logo无法自行resize,如何操作?保证识别到不同分辨率的LCM后开机logo可以正常显示[Analysis]1. 关于时序JB版本中,接口disp_drv_get_lcm_driver实现compare id并获取到lcm driver以及lcm param的动作原创 2014-02-25 11:04:12 · 2681 阅读 · 0 评论 -
emmc
mediatek\emmc\kernel\drivers\mmc\core\mmc.cmediatek\build\tools\emigen\MT6572\MemoryDeviceList_MT6572.xlsmediatek\config\ret72_wet_lca\autoconfig\kconfig\projectmediatek\config\ret72_wet_lca原创 2014-02-14 11:27:16 · 2837 阅读 · 0 评论 -
新建raw data 分区
[DESCRIPTION] 添加raw data分区。[SOLUTION] 在partition table中的nvram下面添加一行.各列的值如下 –partition这列填写partition的名字,如“TEST”。–Type: 填写分区类型。Raw data.–Main_Size(KB)填写该partition的大小,单位是原创 2014-02-18 15:26:35 · 1767 阅读 · 0 评论 -
如何在uboot/LK中读取raw分区
[DESCRIPTION] 自己新建的raw data分区,如何在uboot/LK中读取数据。这里给出一段参考code[SOLUTION] 这里的code供参考,得根据实际情况进行修改和完善。//////////////////////////////////////// printf("[demo_uboot]:read test原创 2014-02-18 15:47:07 · 3713 阅读 · 0 评论 -
Android - 文件操作 小结
在android中的文件放在不同位置,它们的读取方式也有一些不同。一、资源文件的读取: 1) 从resource的raw中读取文件数据:01String res = "";02try{03转载 2014-02-19 11:09:31 · 1060 阅读 · 0 评论 -
【NvRAM】Native层读写nvram
写nvram的流程: 1,NVM_GetFileDesc(file_lid, &rec_size, &rec_num,true);//读打开 2,read 3,NVM_CloseFileDesc 4,NVM_GetFileDesc(file_lid, &rec_size, &rec_num,false);//写打开 5,writ原创 2014-02-19 20:05:55 · 4213 阅读 · 1 评论 -
Android 系统信息获取(CPU,RAM,ROM,Battery,SD-card,版本等)
一、内存(ram):android的总内存大小信息存放在系统的/proc/meminfo文件里面,可以通过读取这个文件来获取这些信息:[java] view plaincopypublic void getTotalMemory() { String str1 = "/proc/meminfo";转载 2014-03-07 11:43:32 · 1157 阅读 · 0 评论 -
byte变成无符号整数
int result= bytes&0xff;原创 2014-04-29 17:53:51 · 2345 阅读 · 0 评论 -
修改屏幕密度
mediatek/config/your_project/system.propro.sf.lcd_density=240原创 2014-04-29 20:22:30 · 2839 阅读 · 0 评论 -
Android系统用不锁屏
KeyguardViewMediator.javamExternallyEnabled = false;原创 2014-03-30 23:58:43 · 749 阅读 · 0 评论 -
获取apk包签名
private String getSign(Context context) { PackageManager pm = context.getPackageManager(); List apps = pm.getInstalledPackages(PackageManager.GET_SIGNATURES); Iterator iter原创 2014-03-31 14:03:19 · 2048 阅读 · 0 评论 -
newWakelock方法
void acquire() 持锁;void acquire(long timeout) 持锁,timeout毫秒后自动释放;boolean isHeld() 返回锁的状态,true为正被持锁,false为被释放或未被持锁;void release() 释放锁;void setReferenceCounted(boolean value)原创 2014-05-05 11:18:40 · 3055 阅读 · 0 评论 -
wakelock的使用
wakelock的使用博客分类: android PowerManager.WakerLock是我分析Standup Timer源代码时发现的一个小知识点,Standup Timer 用WakeLock保证程序运行时保持手机屏幕的恒亮(程序虽小但也做得相当的细心,考虑的很周到)。PowerManager 和PowerManager.WakerLock7用转载 2014-05-05 11:24:33 · 1574 阅读 · 0 评论 -
不插SIM卡,不能拨打紧急电话
[DESCRIPTION]不插SIM卡,手机不能拨打紧急电话Root Cause手机没有写入合法的IMEI;或者当地的某个运营商不支持紧急电话,而手机正好选上了这个运营商;或者当地的某个运营商不支持无SIM卡的紧急电话,而手机正好选上了这个运营商[SOLUTION]检查手机是否有写入合法的IMEI用对比机切换到同一制式(与测试机同为2G或者同为3G),同样不插卡看对比机是否原创 2014-04-04 10:45:30 · 6549 阅读 · 3 评论 -
增加新的驱动设备
1、首先配置好GPIO2、在Proje原创 2014-04-19 10:24:09 · 972 阅读 · 0 评论 -
永不锁屏
frameworks/base/packages/SettingsProvider/res/values/defaults.xmlR.integer.def_screen_off_timeout设为-1即可原创 2014-03-25 16:48:03 · 703 阅读 · 0 评论 -
如何调整sensor 在earlysuspend的阶段的polling速率
mediatek\kernel\drivers\hwmon\hwmsen\hwmsen_dev.c if(cxt->delayCount > 0&&idx != ID_PROXIMITY)//不做delay每次polling都获取数据原创 2014-03-25 11:23:03 · 842 阅读 · 0 评论 -
ListView动态加载addHeaderView
mListView.setAdapter(null);mListView.addHeaderView(View);mListView.setAdapter(mAdapter);原创 2014-05-07 16:32:25 · 5884 阅读 · 0 评论 -
540*960分辨率kernel logo显示不正常
在mediatek\external\boot_logo_updater\boot_logo_updater.c中按照下面的注释修改: #define ALIGN_TO(x, n) \ (((x) + ((n) - 1)) & ~((n) - 1)) //=============增加这个宏定义 .... else if(0 == strncmp(MTK_LCM_P原创 2014-03-27 10:56:39 · 1734 阅读 · 0 评论 -
休眠状态下,响应按键
在input_set_capability(tpd->dev, EV_KEY, KEY_MENU);原创 2014-04-25 16:39:49 · 1152 阅读 · 0 评论 -
最小二乘法曲线拟合 C语言实现
简单思路如下:1,采用目标函数对多项式系数求偏导,得到最优值条件,组成一个方程组;2,方程组的解法采用行列式变换(两次变换:普通行列式——三角行列式——对角行列式——求解),行列式的求解算法上优化过一次了,目前还没有更好的思路再优化运算方法,限幅和精度准备再修改修改目前存在的问题:1,代码还是太粗糙2,数学原理可行,但是计算机运算有幅度溢出和精度问题,这方面欠考虑,导致高阶大数转载 2014-04-26 11:55:00 · 36633 阅读 · 0 评论