- 博客(20)
- 收藏
- 关注
Android学习规划和学习资料
Android学习规划和学习资料 最近经常被问起如何更深入学习Android,在这里分享一些学习经验。 一、应用层: 应用层的书没有特别好的,内容都大同小异。推荐下面的学习资料: 1. Android developer网站http://developer.android.com Android developer网站提供了熟悉Android系统最权威的资料,这里包含了Andr...
2013-05-18 22:27:29 150
原创 一个打通jni,java framework,application三层的练习
练习:从jni层获得一个字符串,在屏幕上显示,当然是手机屏幕 要求: 1.需要包含三层结构:JNI, java framework, java application 2.字符串的内容为“Hello from JNI !”,必须在JNI层定义 这个练习是在Android的源码工程下做的,我的Android源代码路径为/Android/android-1.6_r2 开工: ...
2011-02-15 11:21:15 77
原创 android framework jni过程
分析Android framework源码中JNI的实现调用过程及其加深对JNI技术的理解。 1..frameworks/base/core/jni,编写native代码(cpp) 2.修改frameworks/base/core/jni/Android.mk,将native代码编译产生libtest_framework.so 3.修改framework/base/data/etc/plat...
2011-02-15 10:46:24 135
原创 android调试c/c++
android中c/c++程序的调试(eclipse) 1. 使用gdbserver调试 使用JDWP只能调试java层面的程序,如果想调试C层面的代码,需要使用gdbserver方式,gdbserver的服务端和客户端都包含在android的源码中。 server端是out/target/product/xxxxxx/system/bin/gdbserver。 cl...
2011-02-15 10:35:10 175
原创 android电源部分2
BatteryService作为电池及充电相关的服务,它的实现非常简单: o 监听UEvent,读取sysfs里中的状态。 实现了一个UEvent的观察者。uevent是Linux内核用来向用户空间主动上报事件的机制,对于JAVA程序来说,只实现UEventObserver的虚函数onUEvent,然后注册即可。 private UEventObserver mUEven...
2011-02-14 14:36:46 110
原创 android电源部分1
电池的信息,电压,温度,充电状态等等,都是由BatteryService来提供的。BatteryService是跑在system_process当中,在系统初始化的时候启动,如下 在BatteryService.java中: Log.i(TAG, "Starting Battery Service."); BatteryService b...
2011-02-14 14:36:09 108
原创 关于Android系统中system.img和data.img中文件系统的权限设置
关于Android系统中system.img和data.img中文件系统的权限设置【转】 2010-07-06 09:33 转自:http://blog.chinaunix.net/u3/103613/showart_2218437.html in system.img and data.img, we can find directory and files have their ow...
2011-02-12 17:31:05 181
原创 Android权限机制总结与常见权限不足问题分析
Android权限机制总结与常见权限不足问题分析 2010-07-14 16:18 Android系统是运行在Linux内核上的,Android与Linux分别有自己的一套严格的安全及权限机制, 很多像我这样的新手,尤其是习惯了windows低安全限制的用户,很容易在这方面弄混淆,下面是我总结的Android系统权限相关的内容, 作为这段时间对android权限学习的总结,也希望能对大...
2011-02-12 17:29:59 98
原创 超级终端
android开发需要处理at命令 win下用超级终端连接设备 1.首先将设备连接到电脑,然后在我的设备管理里查看相应的端口入com11 2.新建超级终端,设置该端口号 3.设置bit率115200,不同产品设置不同 4.在超级终端的属性界面里,将回显等选项选中 输入at返回ok,标示链接成功 如果设备已经连接上,但无法输入数据,就是回显功能没选中,或者端口号设置不正确,或者bi...
2011-02-11 16:20:25 193
原创 java synchronized
刚看到时有一些不理解,后来查了一些资料,对自己有很大帮助,我对synchronized的用法的理解是: 先是synchronized的适用场合,对象,作用以及必要性和副作用 场合:多线程并发访问资源 作用:为资源(比如变量,结构,文件等)加锁 副作用:同步造成延迟等待,没有多线程环境的情况下不要使用,用了这个关键字可以保证安全性,但同时效率就会有所降低。 例子?简单的: 一...
2011-02-11 10:47:28 103
原创 android setTag()/getTag()应用
View中的setTag(Onbect)表示给View添加一个格外的数据,以后可以用getTag()将这个数据取出来。 可以用在多个Button添加一个监听器,每个Button都设置不同的setTag。这个监听器就通过getTag来分辨是哪个Button 被按下。 import android.app.Activity; import android.os....
2011-02-10 18:40:25 69
原创 android多apk共享私有文件
Android给每个APK进程分配一个单独的用户空间,其manifest中的userid就是对应一个Linux用户 (Android 系统是基于Linux)的. 所以不同APK(用户)间互相访问数据默认是禁止的. 但是它也提供了2种APK间共享数据的形式: 1. Share Preference. / Content Provider APK可以指定接口和数据给任何其他APK读...
2011-02-10 17:47:47 249
原创 java位运算详解
位运算口诀: 清零取反要用与,某位置一可用或 若要取反和交换,轻轻松松用异或 移位运算 要点 1 它们都是双目运算符,两个运算分量都是整形,结果也是整形。 2 " < >"右移:右边的位被挤掉。对于左边移出的空位,如果是正数则空位补0,若为负数,可能补0或补1,这取决于所用的计算机系统。 4 ">>>"运算符,右边的位被挤掉,对于左边移出的空位一概补上0。 ...
2011-01-30 16:09:30 77
原创 ubuntu下载编译android源码(二)
原帖:http://mmmyddd.freeshell.net/wiki/index.html Contents [Hide] 1 Android Source Code Download 1.1 Website 1.2 Create Directory 1.3 Donwload Tool Chain 1.4 下载Android平台源代码 2 编译Android平台以及SDK 2....
2011-01-29 12:50:34 61
原创 ubuntu下载编译android源码(一)
一、获取Android源代码 Git是Linux Torvalds(Linux之父)为了帮助管理Linux内核开发而开发的一个开放源码的分布式版本控制软件,它不同于Subversion、CVS这样的集中式版本控制系统。在集中式版本控制系统中只有一个仓库(Repository),许多个工作目录(Working Copy),而在Git这样的分布式版本控制系统中(其他主要的分布式版本控制系统还有B...
2011-01-29 12:49:49 103
原创 ubuntu svn使用指南
1. 安装 服务器端: sudo apt-get install subversion 客户端: sudo apt-get install svn 2.初始化repository 服务器端: sudo mkdir /repository sudo svnadmin create /repository 3.修改权限: 在/repository/conf目...
2011-01-29 11:48:33 62
原创 Android.mk文件语法规范及使用模板
Android.mk文件语法规范 根据eoeandroid上的的连载,进行一些更新、修改和加亮。 今天翻译ANDROID-MK.TXT文件(英文原文件在/development/Ndk/Docs/android-mk.txt) Android.mk文件语法规范 Introduction: Android.mk编译文件是用来向Android NDK描述你的C,...
2011-01-29 11:47:45 59
原创 ubuntu android开发环境配置
OS :ubuntu10.10 JDK :1.6 IDE :Eclipse 3.5+ ADT 下载JDK,地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html 文件名“jdk-6u23-linux-i586.bin”(32位) 放在了“/usr/lib/jvm/java”下...
2011-01-29 11:46:42 84
原创 ubuntu C/C++ IDE
为避免以下某个软件安装时不自动安装 build-essential 不妨先执行: sudo apt-get install build-essential anjuta Anjuta DevStudio 的官方地址:http://anjuta.sourceforge.net/ Anjuta是一个C/C++ IDE,它最大的特色是灵活,同时打开多个文件,内嵌代码级的调试器(调用gdb...
2011-01-29 11:45:54 118
原创 linux内核开发入门
在windows下阅读Linux内核源代码:阅读代码一般用source insight3 Linux内核比较出名的四本书为:深入理解Linux内核(ulk3),情景分析,Linux设备驱动程序(第三版)(ldd3),Linux内核设计与实现(第二版)(lkd2),这四本书就是Linux的四大名著,它们的特点为: lkd2:属于在总体上给你一个轮廓和框架;先看一遍有个总体把握,过后再精读...
2011-01-29 11:43:57 131
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人