- 浏览: 60371 次
- 性别:
- 来自: 上海
-
最新评论
-
tangyunliang:
4.0以上被禁用了
不改framework屏蔽HOME按键 -
夜之son:
这有版本限制啊。
不改framework屏蔽HOME按键 -
spacefly:
顶你 ~~~
解决办法之Error generating final archive: Debug certificate expired on
文章列表
GSMCallTracker在本质上是一个Handler。
GSMCallTracker是Android的通话管理层。GSMCallTracker建立了ConnectionList来管理现行的通话连接,并向上层提供电话调用接口。
在GSMCallTracker中维护着通话列表:connections。顺序记录了正连接上的通话,这些通话包括:ACTIVE,DIALING,ALERTING,HOLDING,INCOMING,WAITING等状态的连接。 GSMCallTracker将这些连接分为了三类别进行管理:
RingingCall: INCOMING ,WAITING
F ...
第一部分 c代码
Android源码中,hardware/ril目录中包含着Android的telephony底层源码。这个目录下包含着三个子目录,下面是对三个子目录的具体分析。
一、目录hardware/ril/include分析:
只有一个头文件ril.h包含在此目录下。ril.h中定义了76个如下类型的宏:
RIL_REQUEST_XXX ,
这些宏代表着客户进程可以向Android telephony发送的命令,包括SIM卡相关的功能,打电话,发短信,网络信号查询等。好像没有操作地址本的功能?
...
Android的Window类(一) Android的GUI层并不复杂。它的复杂度类似于WGUI这类基于布局和对话框的GUI,与MFC、QT等大型框架没有可比性,甚至飞漫魏永明的MiniGUI都比它复杂许多。您也许会问,这样简单的GUI如何实现浏览器呢?原因很简单,浏览器有自己一套GUI。Android浏览器(WebKit)的GUI和Android的GUI实用同一套GDI——Skia,但GUI层是完全不同的设计,分别自成体系。
Windown类,位于代码树frameworks\base\core\java\android\view\Windowjava.java文件。连同注释,这个文件总 ...
public void onAttachedToWindow() {
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
super.onAttachedToWindow();
}
分析Android的启动过程,从内核之上,我们首先应该从文件系统的init开始,因为 init
是内核进入文件系统后第一个运行的程序,通常我们可以在linux的命令行中指定内核第一个调用谁,如果没指定那么内核将会到/sbin/,
/bin/ 等目录下查找默认的init,如果没有找到那么就报告出错。
下面是曾经用过的几种开发板的命令行参数:
S3C2410 启动参数:
noinitrd
root=/dev/nfs nfsroot=192.168.2.56:/nfsroot/rootfs
ip=192.168.2.188:192.168.2.56:192.168.2.56:255.255.255 ...
Andriod Phone模块相关(总览)
2010-01-30 13:50
1、从java端发送at命令的处理流程。
2、unsolicited 消息从modem上报到java的流程。
3、猫相关的各种状态的监听和通知机制。
4、通话相关的图标变换的工作原理。
5、gprs拨号上网的通路原理。
6、通话相关的语音通路切换原理、震动接口。
7、通话相关的notification服务。
8、通话相关的各种server。
Andriod Phone模块相关(一)
2010-01-30 14:52
第一部分:从java端发送at命令的处理流程。
拨出电话流程:
1、Contacts的AndroidM ...
刷第一个开机画面软件使用教程:
先打开机子的fastboot模式
1:先找好图片(适合自己分辨率的图片)放在工具里(最好是PNG格式,其他格式容易失真)
2:点开 G2开机画面制作工具
3:点OPEN打开图片
4:点convert生成第一个开机画面文 ...
Android 开机会出现3个画面:
1. Linux 系统启动,出现Linux小企鹅画面(reboot)(Android 1.5及以上版本已经取消加载图片);
2. Android平台启动初始化,出现"A N D R I O D"文字字样画面;
3. Android平台图形系统启动,出现含闪动的ANDROID字样的动画图片(start)。
1、开机图片(Linux小企鹅) (Android 1.5及以上版本已经取消加载图片);
Linux Kernel引导启动后,加载该图片。
logo.c中定义nologo,在fb_find_logo(int depth)函数中根据nol ...
一、 android sms所要的权限
Java代码
1.<uses-permission android:name="android.permission.READ_SMS" />
2.<uses-permission android:name="android.permission.RECEIVE_SMS" />
二、 sms发送
与短消息发送相关的类为:SmsManager.
Java代码
1.SmsManag ...
下面的一些例子是从网上找的,他有点像J2ME的platformRequest,能调用手机平台的一些如SMS,浏览器,MMS,TEL等功能
显示网页
Java代码
# Uri uri = Uri.parse("http://google.com");
# Intent it = new Intent(Intent.ACTION_VIEW, uri);
# startActivity(it);
显示地图
Java代码
# Uri uri = Uri.parse("geo:38.899533,-77.036476" ...
1. ITelephony接口和ISms接口以及AIDL
在我们的Android应用中,当需要实现电话拨号时,我们需要进行如下调用
ITelephony phone = (ITelephony)ITelephony.Stub.asInterface(ServiceManager.getService("phon"))
phone.dial("10086");
对于短信应用,我们需要的是调用SmsManager,代码如下
SmsManager manager = SmsManager.getDefault();
manager.sen ...
Activity物件与Service物件在不同的进程(Process)里执行,各有不同的UID(Unix user ID)。由於各自独立执行,所以Activity物件通常依赖Intent物件去请求Android启动所需要的Service。
就Service物件的开发者而言,Activity物件是属於外界(因为两者在不同的进程里执行)的软体,也大多是别人开发的。那麼,Service物件如何确定这外来的物件是善意的呢? 这就是安全性的问题了。在Service类别里,可以做权限的检查,其常用指令如下图:
當Service確認了對方的善意,就將IBinder介面的參考(Reference)傳 ...
与人有生老病死一样,线程也同样要经历开始(等待)、运行、挂起和停止四种不同的状态。这四种状态都可以通过Thread类中的方法进行控制。下面给出了Thread类中和这四种状态相关的方法。
// 开始线程
public void start( );
public void run( );
// 挂起和唤醒线程
public void resume( ); // 不建议使用
public void suspend( ); // 不建议使用
public static void sleep(long millis);
...
1. Android进程
在了解Android线程之前得先了解一下Android的进程。当一个程序第一次启动的时候,Android会启动一个LINUX进程和一个主线程。默认的情况下,所有该程序的组件都将在该进程和线程中运行。同时,Android会为每个应 ...
Android 的volume服务主要是用来管理usb/sd卡等外部存储设备。平台可以对外部存储设备进行操作和轮询状态,当外部存储设备状态发生变化时,volume 服务也会即时报告平台。
相关代码主要位于:
system/core/vold
frameworks/base/services/java/com/android/server/MountListener.java
frameworks/base/services/java/com/android/server/MountService.java
frameworks/base/core/java/android/os/IMountS ...