android 零散笔记不定期更新 v17

2024-02-09 14:48

本文主要是介绍android 零散笔记不定期更新 v17,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

note1:Android查看源代码的版本号

1. 编译的时候在终端中一开始就会打印出来:

PLATFORM_VERSION:2.3.1

2. 直接去make文件中去看:

build\core\version_defaults.mk  // 搜索该文件中的 PLATFORM_VERSION值

 

note2:编译cm9时OutOfMemoryError

在编译cm9代码的时候到了Signing package总是会java.lang.OutOfMemoryError:

虚拟机参数在 vendor/cm/tools/squisher设定

终端执行

sed -i 's/Xmx512m/Xmx1024m/g' vendor/cm/tools/squisher

当然,堆大小看你心情设置了

 

note3:android:sharedUserId=”android.uid.system”

使用此sharedUserId的时候需要platform签名,mk文件中设置

拿过来一个apk,如果里面用了sharedUserId,那么需要先签名成platform,然后push进去reboot即可

install -r会提示错误**** has no signatures that match those in shared user android.uid.system; ignoring!

 

note4:android系统给进程分配内存情况(4.0 ics)

adb shell getprop | grep heap

[dalvik.vm.heapgrowthlimit]: [64m]

[dalvik.vm.heapsize]: [256m]

[dalvik.vm.heapstartsize]: [8m]

输入命令之后回查到上述几个结果
[dalvik.vm.heapstartsize]: [8m]:给进程分配的起始heap=8m
[dalvik.vm.heapgrowthlimit]: [64m]:进程最大可分配到64m
[dalvik.vm.heapsize]: [256m]:单个虚拟机可分配的最大内存=256m
更改上述参数可以在build.prop修改
build.prop在system下,pull出来修改后再push回去,reboot即可
note5:debug系统源码(进程system_process)
1.eclipse中导入你的源码
2.ddms中选中要debug的进程,这里选中system_process即可
3.项目中选择debug as - debug configurations
4.双击romote java application新建一个配置(如果之前有了,直接点击debug就行)
5.host:localhost,port:8700,点击debug即可
这时在ddms中查看系统进程,发现前面爬上一只小绿虫子
note6:申请apiKey
a.ubuntu
1.$ keytool -list -keystore ~/.android/debug.keystore(提示输入密码,可以直接确定)
然后显示认证指纹 (MD5):********************
2.打开https://developers.google.com/android/maps-api-signup?hl=zh-CN
网页最下面会有
I have read and agree with the terms and conditions (printable version)
My certificate's MD5 fingerprint: 
不过很有可能这里显示的是“网页无法显示/打开”,如果能打开,那么填写指纹提交即可,如果不能打开,需要进行第三步
3.修改ubuntu的hosts
sudo gedit /etc/hosts (编辑hosts,具体内容百度,现在203.208.46.180 google-developers.appspot.com可用,但不保证以后也可用)
sudo /etc/init.d/networking restart (然后重启网络)
这时候刷新网页应该就可以继续了
note7:logcat基本参数
-v time 输出时间
-b radio 查看radio log
-s tag1 tag2…… 查看多个tag的log
-s tag:priority 查看至少为priority级别以上的tag的log
note8:ICS模拟器不支持电脑键盘输入
最近发现建立ICS模拟器后,无法用电脑键盘直接输入文本
解决办法:编辑模拟器,在hardware中添加“keyboard support”,value=yes,保存,重启即可
note9:4.0+模拟器中,屏幕下方3大虚拟按键显示(Home,Back,Recent Apps
新建一个4.0模拟器是没有上面几个按键的。
解决办法:编辑模拟器,在hardware中添加“Hardware Back/Home keys”,value=no,保存,重启即可
note10:在eclipse中debug应用入口页面
先在eclipse中在要debug的地方打断点
然后在终端中执行adb shell am start -D  包名/.类名即可
比如:adb shell am start -D com.android.su.agent/.activity.MainActivity
note11:命令行重启/关闭手机
adb shell reboot(重启)
adb shell reboot -p(关闭)
note12:使用apktool反编译apk
标准的framework内嵌在apktool中,但是一些厂商使用自己的资源,这个时候直接反编译就会出错
我们需要使用apktool把这些资源安装,然后再反编译
这些资源就去你的手机里面pull一个就可以了
$ apktool if framework-res.apk
I: Framework installed to: /home/su1216/apktool/framework/1.apk$ apktool d Settings.apk 
I: Baksmaling...
I: Loading resource table...
I: Loaded.
I: Decoding AndroidManifest.xml with resources...
I: Loading resource table from file: /home/su1216/apktool/framework/1.apk
I: Loaded.
I: Regular manifest package...
I: Decoding file-resources...
I: Decoding values */* XMLs...
I: Done.
I: Copying assets and libs...
 所需资源不一定都是 framework-res.apk,比如htc需要com.htc.resources.apk


note13:下载adt插件
由于android官网经常无法加载,所以有时候需要离线下载adt插件
想要下载ADT-xx.x.x.zip,可以直接访问下面地址,也可以使用下载工具
http://dl.google.com/android/ADT-22.6.2.zip

note14:一些密码存储位置
WI-FI密码
data/misc/wifi/bcm_supp.conf或data/misc/wifi/wpa_supplicant.conf
锁屏密码
data/system/password.key:密码锁屏密码
data/system/gesture.key:手势锁屏密码

note15:app内置字体
app中可以内置字体,但是不能在xml中进行配置,只能动态设置。
Typeface tf = Typeface.createFromAsset(getAssets(),  "fonts/BPreplay.otf");
TextView tv = (TextView) findViewById(R.id.CustomFontText);
tv.setTypeface(tf);

note16:app录屏
android从4.4开始支持录屏
adb shell screenrecord filepath
screenrecord可以指定视频尺寸(--size),比特率(--bit-rate),录制时间(--time-limit,默认为180秒)等。

note17:app中查看当前进程名
read文件/proc/self/cmdline即可

这篇关于android 零散笔记不定期更新 v17的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/694511

相关文章

poj3468(线段树成段更新模板题)

题意:包括两个操作:1、将[a.b]上的数字加上v;2、查询区间[a,b]上的和 下面的介绍是下解题思路: 首先介绍  lazy-tag思想:用一个变量记录每一个线段树节点的变化值,当这部分线段的一致性被破坏我们就将这个变化值传递给子区间,大大增加了线段树的效率。 比如现在需要对[a,b]区间值进行加c操作,那么就从根节点[1,n]开始调用update函数进行操作,如果刚好执行到一个子节点,

hdu1394(线段树点更新的应用)

题意:求一个序列经过一定的操作得到的序列的最小逆序数 这题会用到逆序数的一个性质,在0到n-1这些数字组成的乱序排列,将第一个数字A移到最后一位,得到的逆序数为res-a+(n-a-1) 知道上面的知识点后,可以用暴力来解 代码如下: #include<iostream>#include<algorithm>#include<cstring>#include<stack>#in

hdu1689(线段树成段更新)

两种操作:1、set区间[a,b]上数字为v;2、查询[ 1 , n ]上的sum 代码如下: #include<iostream>#include<algorithm>#include<cstring>#include<stack>#include<queue>#include<set>#include<map>#include<stdio.h>#include<stdl

Android实现任意版本设置默认的锁屏壁纸和桌面壁纸(两张壁纸可不一致)

客户有些需求需要设置默认壁纸和锁屏壁纸  在默认情况下 这两个壁纸是相同的  如果需要默认的锁屏壁纸和桌面壁纸不一样 需要额外修改 Android13实现 替换默认桌面壁纸: 将图片文件替换frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.*  (注意不能是bmp格式) 替换默认锁屏壁纸: 将图片资源放入vendo

Android平台播放RTSP流的几种方案探究(VLC VS ExoPlayer VS SmartPlayer)

技术背景 好多开发者需要遴选Android平台RTSP直播播放器的时候,不知道如何选的好,本文针对常用的方案,做个大概的说明: 1. 使用VLC for Android VLC Media Player(VLC多媒体播放器),最初命名为VideoLAN客户端,是VideoLAN品牌产品,是VideoLAN计划的多媒体播放器。它支持众多音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影

hdu 1754 I Hate It(线段树,单点更新,区间最值)

题意是求一个线段中的最大数。 线段树的模板题,试用了一下交大的模板。效率有点略低。 代码: #include <stdio.h>#include <string.h>#define TREE_SIZE (1 << (20))//const int TREE_SIZE = 200000 + 10;int max(int a, int b){return a > b ? a :

AI行业应用(不定期更新)

ChatPDF 可以让你上传一个 PDF 文件,然后针对这个 PDF 进行小结和提问。你可以把各种各样你要研究的分析报告交给它,快速获取到想要知道的信息。https://www.chatpdf.com/

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

GIS图形库更新2024.8.4-9.9

更多精彩内容请访问 dt.sim3d.cn ,关注公众号【sky的数孪技术】,技术交流、源码下载请添加微信:digital_twin123 Cesium 本期发布了1.121 版本。重大新闻,Cesium被Bentley收购。 ✨ 功能和改进 默认启用 MSAA,采样 4 次。若要关闭 MSAA,则可以设置scene.msaaSamples = 1。但是通过比较,发现并没有多大改善。