Welcome 微信登录

首页 / 操作系统 / Linux

观摩Android系统源码 +闹钟-1

观摩Android系统源码 +闹钟-1

我们在使用Android操作系统的时候,作为一个非常实用的应用程序当数Android自带的闹钟程序了。在此让我们来一起研究这个Android自带的闹钟程序是怎么一个实现过程吧!首先让我们来看看整个闹钟的设置和运行过程,这有助于我们找到研究的出发点。 1.闹钟列表 2.闹钟设置 好的,我们可以看出这个闹钟程序主要是由这两个Activity组成(当然还包含响玲弹出框),它们分别对应闹钟项目源码中的AlarmClock.java和SettingsActivit...
Android服务Service----实现电话监听录音

Android服务Service----实现电话监听录音

Android中的服务和windows中服务是类似的东西,服务一般没有用户操作界面,它运行于系统中不容易被用户发觉,可以使用它开发如监控之类的程序。服务的开发比较简单,如下:第一步,继承Service类 publicclass SMSService extends Service{}第二步,在AndroidManifest.xml文件中的<application>节点里对服务进行配置: <serviceandroid:name= ".SM...
Android广播和短信广播详解----使用广播接收者窃听短信

Android广播和短信广播详解----使用广播接收者窃听短信

当系统收到短信时,会发出一个action名称为Android.provier.Telephony.SMS_RECEIVED的广播Intent,该Intent存放了接收到的短信内容,使用名称 “pdus”即可从Intent中获取短信内容。pdus是一个object类型的数组,每一个object都是一个byte[]字节数组,每一项为一条短信。Object[] pduses= (Object[])intent.getExtras().get("pdus");fo...
Android TextView设置字体风格

Android TextView设置字体风格

在开发应用过程中经常会遇到显示一些不同的字体风格的信息犹如默认的LockScreen上面的时间和充电信息。对于类似的情况,可能第一反应就是用不同的多个TextView来实现,对于每个TextView设置不同的字体风格以满足需求。这里推荐的做法是使用Android.text.*;和android.text.style.*;下面的组件来实现RichText:也即在同一个TextView中设置不同的字体风格。对于某些应用,比如文本编辑,记事本,彩信,短信等地方,...
Java+Threads+多线程参考手册

Java+Threads+多线程参考手册

1 同步 如何同步多个线程对共享资源的访问是多线程编程中最基本的问题之一。当多个线程并发访问共享数据时会出现数据处于计算中间状态或者不一致的问题,从而影响到程序的正确运行。我们通常把这种情况叫做竞争条件(race condition),把并发访问共享数据的代码叫做关键区域(critical section)。同步就是使得多个线程顺序进入关键区域从而避免竞争条件的发生。1.1 Synchronized关键字 Synchronized是Java多线程编程中最常...
Android之MultiAutoCompleteTextView控件的使用

Android之MultiAutoCompleteTextView控件的使用

1 使用背景:带检索功能的文本输入框,可用于联系人查找,网页搜索等等应用。2 常见方法见SDK文档,这里不累赘3 下拉框更新问题,在文本内容发生变化时,把下拉框删除,再显示出来,可以避免界面刷新重叠的问题。监听View文本内容变化代码:TextWatcher watcher = new TextWatcher(){ @Override public void afterTextChanged(Editable s) { } @Override ...
Android 侦听Usb或者SDCard热拔插事件

Android 侦听Usb或者SDCard热拔插事件

有时候我们可能要侦听Usb或者SDCard一些拔插事件,其实很简单,当我们做拔插的时候比如Usb或者SDCard,Android底层会发出相应的Intent出来给上层应用成使用,比如SDCard或者Usbandroid都会发这样一个Intent.ACTION_MEDIA_MOUNTED,所以我们在上层应用程序中只要侦听这个Intent就可以了,看到网上很多人不知道怎么去区分到底是Usb或者SDCard,其实这个Intent里面带了一个Data,Data里面...
Android 禁止屏幕休眠和锁屏的方法

Android 禁止屏幕休眠和锁屏的方法

Introduction常常我们开发程序的时候我们不需要系统唤醒系统锁屏功能,比如我们在做xxxNowTV或XXX播放器这样的程序,用户有时候在看电视或视频的时候不希望系统的锁屏功能启动,既不想锁频,然而系统却在我们看电视或者视频的时候出来个锁屏的界面进行锁频拉,我们还要想继续看的话还要去解锁,这样好麻烦,不是我们想要的,那我们该怎么做呢,其实很简单,我这里只讲其中的两种一 :我们只要在程序中用代码实现。代码如下: //方法一 getWindow().se...
Android 为什么动态广播接收器比静态广播接收器要接受的早

Android 为什么动态广播接收器比静态广播接收器要接受的早

如果,在短信拦截的软件中,程序员们就发现了这个问题。 同一优先级的广播接收器,动态的要比静态注册的早。动态注册:即由代码注册的广播接收器静态注册:即在 AndroidManifest.xml 中注册的广播接收器优先级: 当广播为有序发送的时候,要按这个排序并顺序发送。sendBroadcast 发送的是无序广播。sendOrderedBroadcast 发送的是有序广播。好了,现在寻找问题原因,在找原因前肯定有这样的想法,一个有序队列,既然允许有相同的优先...
底层之旅——Android蓝牙系统分析

底层之旅——Android蓝牙系统分析

Android蓝牙系统分为四个层次,内核层、BlueZ库、BlueTooth的适配库、BlueTooth的JNI部分、Java框架层、应用层。下面先来分析Android的蓝牙协议栈。Android的蓝牙协议栈采用BlueZ来实现,BlueZ分为两部分:内核代码和用户态程序及工具集。内核代码主要由BlueZ核心协议和驱动程序组成;蓝牙协议实现在内核源代码net/bluetooth中,驱动程序位于内核源代码目录driver/bluetooth中。用户态程序及工...
<< 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 >>