android 学习 开发
文章平均质量分 53
勤奋专注
非科班出身的coding
展开
-
sending message to a Handler on a dead thread
EachHandlerhas aLooper, and aLooperis associated with aThread(usually aHandlerThread). The general problem is when aHandlerbecomes associated with thread that stops running. If someone tries to use theHandler, it will fail with the message "send...翻译 2022-04-06 16:05:57 · 3820 阅读 · 0 评论 -
安卓应用桌面点击时,重新打开应用的问题解决
android 应用 重新打开 intent flag原创 2022-04-03 08:11:36 · 1234 阅读 · 0 评论 -
gcc编译相关,特殊宏,__bitwise __force __init __initdata 等
__bitwise 用于编译时sparse的强制类型检查,我们知道数值类型有Little-Endian,Big-Endian 以及 CPU-Endian等, 参考 http://www.woxihuan.com/74285086/1351231634127226.shtml__init、__initdata和__exit、__exitdata定义位于,这些宏定原创 2012-10-26 14:14:39 · 3059 阅读 · 0 评论 -
android生成apk时报错:Dx 1 error; aborting
Build通过,生成apk时报错:[2013-07-16 10:47:53 - APPTest] Dx 1 error; aborting[2013-07-16 10:47:53 - APPTest] Conversion to Dalvik format failed with error 1解决方法:删除编译时生成的 Android Dependencies之后clea原创 2013-07-16 11:00:50 · 9380 阅读 · 0 评论 -
eclipse build后生成 apk
1. 改成Build时自动生成apkbuild默认不生成apk,只有在run as application往target上部署时才生成,如果要默认生成,可以这样处理:在eclipse的Preferences -> Android -> Build中有一项“Skip packaging and dexing until export or launch....”,去掉原创 2013-07-10 17:09:47 · 2330 阅读 · 1 评论 -
Android如何根据当前显示配置匹配资源 layout / drawable
Android如何匹配最佳资源文件 layout / drawable, 比如 res/drawable-mdpi, res/layout-mdpi-976x600等匹配流程图:下面是英文原文,原网址是:http://developer.android.com/guide/topics/resources/providing-resources.html#B原创 2013-06-08 17:26:56 · 2053 阅读 · 0 评论 -
如果失败,则自动重复执行repo sync
写一个shell脚本文件,写入下面的内容,在工作目录执行这个脚本,则可实现自动重复repo sync#!/bin/shrepo syncwhile [ $? -ne 0 ]dorepo syncdone使用注意:由于有网友问到了,故说明一下,本处脚本只是在取android代码当中的一小步,不能替代完整取代码操作。具体是在repo init完成之后的下一步。所转载 2012-05-07 17:36:06 · 5230 阅读 · 1 评论 -
ffmpeg for android 独立ndk以及android项目下编译 --ubuntu
ffmpegfor android 编解码部分编译,不包含ffplay部分;如果有一定英语基础,一定要去官网下载,热心网友的各种版本大多不如官网的全面准确,以点盖面的学习,可能影响效率。官网地址:http://ffmpeg.org/trac/ffmpeg/wiki/How%20to%20compile%20FFmpeg%20for%20Android ,打开后如下图:官网for an原创 2013-03-04 17:15:05 · 6424 阅读 · 23 评论 -
android ffmpeg内核 开源播放器编译与使用 支持2.3及4.0
开源 VLC tewilove faplayer https://github.com/tewilove/faplayer 1. 解码库部分,Native部分:Ubuntu 11.04 + NDK r8b + ruby,期间出现了一些错误,如log,error_handlings等函数,根据错误信息规避等方法,并将mkv目录移除。 2. java应用部分,即apk:使用的是win7原创 2013-03-04 17:09:28 · 1759 阅读 · 0 评论 -
深入分析 Linux 内核链表[转]
深入分析 Linux 内核链表转自:http://www.ibm.com/developerworks/cn/linux/kernel/l-chain/一、 链表数据结构简介链表是一种常用的组织有序数据的数据结构,它通过指针将一系列数据节点连接成一条数据链,是线性表的一种重要实现方式。相对于数组,链表具有更好的动态性,建立链表时无需预先知道数据总量,可以随机分配空间,可以高转载 2013-04-23 14:31:52 · 825 阅读 · 0 评论 -
android java 应用 修改代码 日志
java比想象的简单一些,OOP思想也确实好用;1. class instance2. 构造函数中不能初始化非基本类型? 比如ArrayList, new了之后依然是null;3. class中声明变量时,可以初始化,所以可以不用放在构造函数中。4. 关于instance获取: 可以写一个公用方法 getInstance 返回 this就能获取该class的instance了,原创 2013-04-08 18:06:31 · 899 阅读 · 0 评论 -
关于定制 android 恢复出厂设置的一点思路
android的恢复出厂设置文章问多一般都是从完整的recover mode讲起,恢复出厂设置只是 recovery mode下一个小部分。recovery mode流程分析的文章很多,比较完整的有:http://blog.csdn.net/yahoozhuo/article/details/6403140 这个blog的内容,后面有copy,仅供备份,看原网页格式更好。原创 2013-04-12 09:52:39 · 3124 阅读 · 1 评论 -
某Android 设备的物理存储(Nand)分区分析
只是记录自己的理解,难免有些错误,有时间会补充和更正。以某具体 android 设备为例(Cortex A9双核 + 4GB iNand + 1GB DDR3),记录获取该设备存储分区信息的方法,获取驱动设备信息,主要让大家有一个形象的认识,不涉及驱动具体实现(据说4层);本文是从iNand存储的角度出发理解分区信息(YAFFS2),涉及到基于RAM的文件系统(EXT4,VFS),原创 2013-04-11 18:15:54 · 3630 阅读 · 0 评论 -
关于ARM嵌入式工程师认证,AAE
AAE, Arm Accredited Engineer;1. Prometric 监考,随时可以报名考试;2. 140$,有点贵哦,要1000块钱了;自己学习?能学吗?3. 注册了Prometric账号;4. 下载了AAE大纲,大纲里指定了很多参考书,网友说可以主要看一本:Cortex-A Series Programmer’s Guide.pdf http://ww原创 2013-03-26 17:04:56 · 7201 阅读 · 0 评论 -
android 应用 heap size分配
android不同设备单个进程可用内存是不一样的,可以查看/system/build.prop文件。 # This is a high density device with more memory, so larger vm heaps for it.dalvik.vm.heapsize=24m上面heapsize参数表示单个进程可用的最大内存,单如果存在如下参数:dalvi转载 2012-05-10 17:39:28 · 9815 阅读 · 4 评论 -
android 调用前摄像头进行拍照的方法及完整例子
android调用camera时,可以自己写一个activity,赋上相关参数,打开前camera就可以了;需要申请的permission,在AndroidManifest.xml中添加: 主要功能,打开前camera private Camera openFrontFacingCameraGingerbread() { int ca原创 2014-06-04 17:18:18 · 9263 阅读 · 2 评论 -
Android.mk 增加aar依赖
1. Android.mk中增加两处LOCAL_STATIC_JAVA_AAR_LIBRARIES:= <aar alias> //这里是一处...include $(BUILD_PACKAGE)include $(CLEAR_VARS)//这里是第二处LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := <aar alias&g...原创 2019-08-01 18:29:15 · 2091 阅读 · 1 评论 -
界面切换events的一种调查方式
dumpsys -t 30 usagestats -ctype=MOVE_TO_FOREGROUND 或type=USER_INTERACTIONtype=CONFIGURATION_CHANGE package=android config=b+zh+Hans+CN-ldltr-sw768dp-w768dp-h1024dp-xlarge-notlong-notround...原创 2019-06-13 18:58:56 · 400 阅读 · 0 评论 -
安卓实时打印kernel日志
不像dmesg一次性输出,可以仿照tail 或串口实时输出由于访问的是 /proc/kmsg 需要先获取root权限;adb shell "while true; do cat; sleep 1; done < /proc/kmsg"原创 2019-06-13 18:34:47 · 3070 阅读 · 0 评论 -
android弹窗对话框中间使用自定义view
有时需要使用AlertDialog来弹窗,此时方便控制弹窗的主题,比如title和按钮都是统一的; 如果中间需要显示的view不同,比如显示下图:应该怎么做呢,思路就是替换message使用view,这里使用了组合迭代模式哦;Builder builder = new AlertDialog.Builder( new ContextThemeWrapper(this, R...原创 2018-08-08 17:19:18 · 3203 阅读 · 1 评论 -
通过adb命令监控输入事件
有时运行中出现触摸屏点击不好用,此时adb好用的话,通过命令来监控看触摸屏是否有事件上报。如果有就是前台应用处理的问题,可能是有透明的activity尚未销毁; adb监控touch等event的方法分为简单两步:1. 找到touch或键盘对应的event设备号;2. 使用cat监听该event设备; 1. 找到的event号的方法:dos窗口输入:adb she...原创 2018-08-03 09:57:09 · 8737 阅读 · 1 评论 -
http post不使用库,上传带参数的文件时的消息体样式
消息体需要拼凑成下面的字样:header可以用函数实现;如果用apache的httpmime就不用自己组装这样的字符串了,给喜欢刨根和看数据的朋友;---9HDpTc9h_JwKe_wZFJilhLJnSa1bhBQc 分隔符,这里与头区分Content-Disposition: form-data; name="fil原创 2016-01-07 17:32:50 · 958 阅读 · 0 评论 -
android 获取版本号的方法(非Activity 类下也可以)
在activity类下获取时,不用加ContextpInfo.versionName; //如果获取序列号则使用 pInfo.versionCode/** * 获取App的版本号 * @return */public static String getAppVersion(Context context) { PackageInfo pInfo = null; String ...转载 2015-10-12 09:40:48 · 1093 阅读 · 0 评论 -
Android ListView 使用及MVC关系概要
ListView使用模型MVC划分及使用方法MVC关系如下:三种Adapter类图关系如下:有三种方式使用Adapter绑定数据,后两者都带使用layout的参数自己扩展BaseAdapter使用ArrayAdapter使用SimpleAdapter ArrayAdapt原创 2015-11-05 19:16:38 · 701 阅读 · 0 评论 -
android jitsi编译及运行
下载了jitsi android的版本代码后,直接导入eclipse原创 2014-11-25 13:33:43 · 4502 阅读 · 0 评论 -
How do I start an Intent from an OnClickListener
http://stackoverflow.com/questions/6103974/how-do-i-start-an-intent-from-an-onclicklistener翻译 2014-07-11 17:20:51 · 568 阅读 · 0 评论 -
Android 使用OpenCV之编译环境非CygWin方式(Win7+Eclipse+ADT+CDT+NDK)
纯windows环境下搭建Android OpenCV开发环境,很简单原创 2014-05-21 17:40:48 · 1678 阅读 · 0 评论 -
解决android.os.NetworkOnMainThreadException
原文地址: http://www.2cto.com/kf/201402/281526.html转载 2014-06-05 18:40:44 · 972 阅读 · 0 评论 -
system server ANR 一种分析方法 -- Android JVM异常重启简析
SYSTEM SERVER进程ANR 一般会导致java vm不停重启,还好保留了自动打印log到文件中的方法,出现这种概率性问题,从log入手就简单多了。 1. 找到SYSTEM server的PID,一般在logcat中会有这么一句 System server process 2094 has been created; 2094就是你需要的PID2. 根据pid去搜索原创 2012-05-10 17:56:34 · 16540 阅读 · 2 评论 -
android 4.1.2下的应用在2.3.4上报错
将4.1.2下正常运行的应用程序放在2.3.4的设备上报错:java.lang.RuntimeException: Unable to start activity ComponentInfo{org.app.appname/org.app.appname.gui.MainActivity}: java.lang.IllegalStateException: You must use原创 2013-04-03 14:03:23 · 2224 阅读 · 0 评论 -
android 编译和代码相关问题
1. 4.0 编译环境:Installing required packages (Ubuntu 10.04 -- 11.10)You will need a 64-bit version of Ubuntu. Ubuntu 10.04 is recommended. Building using a newer version of Ubuntu is currently only ex原创 2012-05-04 10:21:38 · 768 阅读 · 0 评论 -
关于freescale开机第一帧画面,即bootlogo
1. 实现方式,将RGB色彩图片的raw数据,写在fsl_logo_bmp.c的一个数组中,用于framebuffer中的填充数据。2. bootloader显示程序中会根据当前lcd将数据修改为rgb565或rgb888方式。3. 注意rawdata的length可能会是ResX*ResY*3(RGB888),或 ResX*ResY*2/3(RGB565),如果不是这个值,请检查rawd原创 2012-03-12 19:48:02 · 1262 阅读 · 0 评论 -
ubuntu下安装imagemagick,
sudo apt-get update sudo apt-get install imagemagick --fix-missing原创 2012-03-12 11:19:37 · 2251 阅读 · 0 评论 -
bootanimation.zip 加载失败的一个原因
这个zip文件必须在ubuntu下使用下面指令: zip -Z store bootanimation.zip part0/*.png part1/*.png desc.txtwindows下zip或者ubuntu下UI压缩都不行。原创 2012-03-09 20:40:09 · 2387 阅读 · 1 评论 -
__weak 说明
摘要翻译by changliang__weak1. 一种编译宏,用于函数声明或者定义;2. 声明变量或函数时,可以不实现也不会报unresolved的错误。3. 定义变量或函数时,使用同于普通函数,只是在系统中还有同名的没有用__weak宏定义的函数时,系统调用不加__weak的函数。 4. 使用限制: 声明变量或函数,同一次编译下只能取一种性质,要么是weak,要么是non翻译 2012-03-09 13:37:53 · 1596 阅读 · 0 评论 -
Linux设备驱动之I2C架构分析--暂存
原文地址:http://dongyulong.blog.51cto.com/1451604/324943 Linux设备驱动之I2C架构分析一:前言I2c是philips提出的外设总线.I2C只有两条线,一条串行数据线:SDA,一条是时钟线SCL.正因为这样,它方便了工程人员的布线.另外,I2C是一种多主机控制总线.它和USB总线不同,USB是基于master-slave机制,任何转载 2012-02-23 17:06:40 · 989 阅读 · 1 评论 -
关于apk安装时,Packagepaser报错: <provider> does not incude authorities attribute
通过修改AndroidManifest.xml中的provider选项下的attribute字段下的字符串没有翻译,请直接替换成相关字符串然后重新打包成apk,就OK了; 比如将 : ,可以去string.xml中找到YOURSTRING真正的字符串值 改成 原因分析:打包时apktool有时候可能没有将string替换成真实值,可以从下面的代码中看出来 framew原创 2012-02-10 18:26:30 · 1880 阅读 · 0 评论 -
Android在标准linux基础上对休眠唤醒的实现
很好的文章,将地址存在这里:http://blog.chinaunix.net/space.php?uid=21074389&do=blog&id=3029853Android在标准linux基础上对休眠唤醒的实现(二)转载 2012-01-05 17:38:41 · 898 阅读 · 0 评论 -
解决eclipse中 "must override s superclass method " 错误
错误原因 编译器兼容性问题,应该选择1.6而不是1.5;有两个地方需要修改:1. 编译器全局配置:window->preferences->java->compiler : java compliance level 选择1.6 这里一般默认已经是1.6了;2. 项目单个配置: project->properties -> java compiler :取消选中 "enable proje原创 2012-02-07 15:28:03 · 950 阅读 · 0 评论 -
三种方法 在Linux里设置环境变量的方法(export PATH)
1、直接用export命令:#export PATH=$PATH:/opt/INCLUDE2、修改profile文件:#vi /etc/profile 在里面加入:export PATH="$PATH:/opt/au1200_rm/build_tools/bin"3. 修改.bashrc文件:# vi /root/.bashrc在里面加入:export转载 2012-01-09 14:53:27 · 1220 阅读 · 0 评论