- 浏览: 386836 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (269)
- FY_UML (3)
- FY_JAVA (12)
- FY_JavaScript脚本 (7)
- FY_JSP (3)
- FY_Tapestry框架 (12)
- FY_Spring框架 (3)
- FY_Manager (5)
- FY_Junit(单元测试) (3)
- SERVER (14)
- FY_Struts2框架 (3)
- FY_SVN (2)
- FY_NoSQL (2)
- FY_jquery_sir (13)
- FY_hibernate_sir (8)
- FY_设计模式_sir (6)
- FY_Extjs_sir (10)
- FY_CI_sir (5)
- FY_Oracle_sir (11)
- FY_MySql_sir (10)
- FY_Hadoop_sir (3)
- FY_SOA_sir (1)
- 中文分词技术 (1)
- FY_Android (52)
- FY_架构 (2)
- FY_PhoneGap (2)
- FY_Webstorm (5)
- FY_Sencha Touch (3)
- HTML5应用快速开发 (1)
- FY_python (0)
- HADOOP (1)
- AI (0)
最新评论
-
antao592:
楼主,HkDataSourceWrapper中的getCurr ...
结合spring jdbc 实现分表分库的数据库访问构思 -
bonait:
不错,看看我的这个怎么样www.zipin168.com
So Easy京东商城 -
chenzheng8975:
...
So Easy京东商城 -
yzhenxing:
我导入demo后少com.google.android.gms ...
google地图demo -
echoaiya:
非常感谢~~
google地图demo
--------------------------------------------AndroidManifest.xml----------------------------------
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ch24"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="10"
android:targetSdkVersion="15" />
<!-- 设置短信权限 -->
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<!-- 电话权限 -->
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/title_activity_main" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- 注册广播 -->
<receiver android:name=".SimpleSmsBroadcaseReceiver" >
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" >
</action>
</intent-filter>
</receiver>
<receiver android:name=".SmsBroadcaseReceiver" >
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" >
</action>
</intent-filter>
</receiver>
<receiver android:name=".CallInBroadcaseReceiver" >
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE" >
</action>
</intent-filter>
</receiver>
</application>
</manifest>
--------------------------------------------Layout activity_main.xml----------------------------
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/charge"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="显示当前电量" />
<Button
android:id="@+id/registerReceiver"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="已经注册的广播" />
</LinearLayout>
--------------------------------------------MainActivity.java--------------------------------------
package com.ch24;
import java.util.List;
import android.app.Activity;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity implements OnClickListener {
/* 显示当前电量 */
private Button btn_charge;
/* 查看已经动态注册的广播 */
private Button btn_registed;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViews();
setListeners();
}
private void findViews() {
btn_charge = (Button) findViewById(R.id.charge);
btn_registed = (Button) findViewById(R.id.registerReceiver);
}
private void setListeners() {
btn_charge.setOnClickListener(this);
btn_registed.setOnClickListener(this);
}
@Override
public void onClick(View v) {
/* 动态注册广播 */
if (v == btn_charge) {
/* 广播+action* */
registerReceiver(new BatteryBroadcaseReceiver(), new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
} else if (v == btn_registed) {// 查询已经注册
/* 包管理实例 */
PackageManager packageManager = getPackageManager();
Intent intent = new Intent();
intent.setAction("android.intent.action.PHONE_STATE");
List<ResolveInfo> list = packageManager.queryBroadcastReceivers(intent, PackageManager.GET_INTENT_FILTERS);
Log.i("a07", "size="+list.size());
}
}
}
--------------------------------------------SimpleSmsBroadcaseReceiver.java------------------
package com.ch24;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
/**
*
* 项目名称:com.ch24
* 类名称:SimpleSmsBroadcaseReceiver
* 类描述: 自定义广播,接收所有
* 创建人:方勇
* 创建时间:2012-12-13 上午8:45:28
* Copyright (c) 方勇-版权所有
*/
public class SimpleSmsBroadcaseReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Log.i("a07", "接收所有广播..........");
}
}
--------------------------------------------SmsBroadcaseReceiver.java--------------------------
package com.ch24;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.telephony.SmsMessage;
import android.util.Log;
/**
*
* 项目名称:com.ch24
* 类名称:SimpleSmsBroadcaseReceiver
* 类描述: 自定义广播,接收所有
* 创建人:方勇
* 创建时间:2012-12-13 上午8:45:28
* Copyright (c) 方勇-版权所有
*/
public class SmsBroadcaseReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
/* Intent中传递的附加数据 */
Bundle bundle = intent.getExtras();
/* 短信内容 */
Object[] data = (Object[]) bundle.get("pdus");
/* 声明Sms消息数组 */
SmsMessage[] messages = new SmsMessage[data.length];
for (int i = 0; i < messages.length; i++) {
/*设置消息体内容*/
messages[i] = SmsMessage.createFromPdu((byte[]) data[i]);
/* 电话号码 */
String smsnumber = messages[i].getDisplayOriginatingAddress();
/* 短信息内容 */
String smsbody = messages[i].getDisplayMessageBody();
Log.i("a07", "smsnumber:"+smsnumber+"|smsbody:"+smsbody);
}
}
}
--------------------------------------------CallInBroadcaseReceiver.java------------------------
package com.ch24;
import android.app.Service;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.telephony.TelephonyManager;
import android.util.Log;
/**
*
* 项目名称:com.ch24
* 类名称:CallInBroadcaseReceiver
* 类描述: 自定义广播,打电话的广播
* 创建人:方勇
* 创建时间:2012-12-13 上午9:11:41
* Copyright (c) 方勇-版权所有
*/
public class CallInBroadcaseReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
/* 电话管理对象 */
TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService(Service.TELEPHONY_SERVICE);
String incomingTel;
Log.i("a07", "来电状态"+telephonyManager.getCallState());
switch (telephonyManager.getCallState()) {
case TelephonyManager.CALL_STATE_RINGING:
incomingTel=intent.getStringExtra("incoming_number");
Log.i("a07", "来电号码"+incomingTel);
break;
default:
break;
}
}
}
--------------------------------------------BatteryBroadcaseReceiver.java-----------------------
package com.ch24;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
/**
*
* 项目名称:com.ch24
* 类名称:BatteryBroadcaseReceiver
* 类描述:电池广播
* 创建人:方勇
* 创建时间:2012-12-13 上午9:49:10
* Copyright (c) 方勇-版权所有
*/
public class BatteryBroadcaseReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
/* 只接收电池改变时的广播 */
if(Intent.ACTION_BATTERY_CHANGED.equals(intent.getAction())){
/* 电量 */
int level = intent.getIntExtra("level", 0);
/*刻度*/
int scala = intent.getIntExtra("scala", 100);
Log.i("a07", "当前电量为:"+level*100/scala+"%");
}
}
}
--------------------------------------------效果-------------------------------------------------
发短信
打电话
电池电量
发表评论
-
史上最快 Android N(安卓7.0)运行效率暴增至600%
2016-10-15 10:08 934谷歌I/O 2016开发者大会在公司总部正式拉开 ... -
So Easy京东商城
2014-12-10 16:51 1588So Easy京东商城 我和17位小伙伴们 ... -
过期Gallery取代方案horizontalscrollView之菜单导航效果
2014-03-23 16:19 2419效果 ------------------------- ... -
过期Gallery取代方案horizontalscrollView之京东效果
2014-03-23 15:57 3882效果 ------------------------- ... -
过期Gallery取代方案horizontalscrollView之幻灯片效果
2014-03-21 17:33 2630效果 ------------------------- ... -
tabhostandbadgeview
2014-03-19 13:45 1038效果 -------------------------- ... -
Android优秀开源项目大全
2014-03-18 15:17 1989以下是开源项目 1、and ... -
Android分页控件xlistview
2014-03-18 14:51 1680strings.xml ----------------- ... -
过期Gallery取代方案horizontalscrollView之普通画廊
2014-03-17 22:48 2448activity_main.xml ---------- ... -
viewpage
2014-03-17 18:08 1064strings.xml ----------------- ... -
FragmentStatePagerAdapter分页
2014-03-17 17:27 813ViewPager ViewPager 如 ... -
FragmentPagerAdapter与FragmentStatePagerAdapter差异
2014-03-17 17:20 1324简介 平常使用的FragmentPagerAdapter和F ... -
抽屉菜单
2014-03-16 12:51 1850strings.xml ----------------- ... -
px和dip以及sp的区别
2014-03-08 17:01 722显示单位px和dip以及sp的区别 dip: devi ... -
fragment生命周期
2014-03-06 16:59 896Fragment必须被写成可重用的模块。因为fragmen ... -
过期API_AlertDialog
2014-03-02 10:07 1158layout----------------------- ... -
Android_Jni 操作指南
2014-01-10 14:45 954Android_Jni 操作指南 NDK(Nati ... -
各种各样圆形进度条
2013-11-11 16:30 567http://www.apkbus.com/android-1 ... -
红杏出墙__实训版
2013-04-20 18:59 1089红杏出墙__实训版 -
google地图demo
2013-04-09 14:25 3211---------------------------- ...
相关推荐
1. **Android应用结构**:Android应用通常由多个组件构成,如Activity(活动)、Service(服务)、BroadcastReceiver(广播接收器)、ContentProvider(内容提供者)等。每个组件都有其特定的生命周期和用途。 2. *...
在Android平台上进行CH34x芯片的USB通信是嵌入式开发中的常见任务,尤其对于需要与硬件设备交互的应用来说。CH34x系列芯片是由韦尔奇科技(Wch Chip)开发的一组USB到串口控制器,广泛用于USB转串口适配器,使得通过...
CH03章节通常会涵盖Android应用的基本架构和组件,例如Activity、Intent、Service、BroadcastReceiver以及ContentProvider。Activity是Android应用中的基本单元,用于展示用户界面;Intent则是Android系统中不同组件...
《Android SDK开发范例大全(第二版)CH05》是针对Android应用开发的一份重要资源,由清华大学出版社出版。这个压缩包包含了第五章的源代码,为开发者提供了丰富的实践示例,帮助深入理解Android SDK的使用。在这个...
CH05部分可能更深入地探讨Android SDK的功能,例如服务(Service)、广播接收器(BroadcastReceiver)、内容提供者(ContentProvider)和通知(Notification)。Service是后台运行的组件,常用于执行长时间任务,而...
在本章“ch03”中,我们将探索Android应用的基础架构,包括Activity、Intent、BroadcastReceiver以及Service等核心组件。这些组件构成了Android应用的核心功能,理解和掌握它们对于任何Android开发者来说都是至关...
《Android Ophone开发完全讲义源码Ch12》是一份深入探讨Android Ophone平台开发的教程资料,其中包含了第十二章的完整源代码。这一章的焦点可能集中在特定的开发主题上,如应用程序框架、用户界面设计、系统服务集成...
这个压缩包包含的子文件按章节顺序排列,分别是ch02、ch07、ch06、ch04、ch02(可能是重复或错误)、以及ch05。下面我们将详细探讨这些章节涵盖的Android开发关键知识点。 **第二章:Android系统架构与开发环境搭建...
1. **AndroidManifest.xml**:这是每个Android应用的核心配置文件,用于声明应用的组件(如Activity、Service、BroadcastReceiver等)、权限需求和其他元数据。 2. **Activity**:Activity是Android应用的基本交互...
7. Android组件:Activity、Service、BroadcastReceiver和ContentProvider是Android应用的四大组件。CH5可能详细讲解了如何创建和管理这些组件,以及它们之间的交互。 8. Android Studio工具:作为开发环境,...
《Android SDK范例开发大全 第3版 源代码 CH3》是针对Android开发者的一份珍贵资源,它包含了第三章的全部源代码示例。这个压缩包旨在帮助开发者深入理解和应用Android SDK的各种功能,通过实际操作来提升技能。在本...
1. **Android开发基础**(ch_01android开发基础.ppt):这部分内容通常会介绍Android平台的概述,包括Android系统架构、开发环境的搭建(如安装Android Studio和SDK)、以及编写第一个Hello World应用程序。...
《Android OPhone开发完全讲义源码Ch05》是一份深入探讨Android OPhone平台开发的教程资料,其中包含了第五章的源代码。这个压缩包是开发者和学习者宝贵的资源,帮助他们理解并实践Android OPhone应用的开发过程。...
《Android SDK范例开发大全 第3版 源代码 CH8》是一本专注于Android应用程序开发的实战指南,其中包含了丰富的示例代码,旨在帮助开发者深入理解Android SDK的各种功能和使用方法。这部分源代码对应的是书中的第八章...
3. **BroadcastReceiver和Intent**:BroadcastReceiver用于接收系统或应用广播事件,Intent则是Android系统中的消息传递机制。开发者可能需要了解如何在OPhone中注册和处理特定的广播。 4. **OPhone UI设计**:...
《Android SDK开发范例大全(第二版)CH03》是针对Android应用程序开发的一本详尽教程,由清华大学出版社出版。这本书的第三章涵盖了Android SDK中的关键知识点,旨在帮助开发者深入理解和实践Android应用的构建过程。...
5. **BroadcastReceiver** (可能在ch28) - 广播接收器:讲解如何注册和使用BroadcastReceiver监听系统或自定义广播事件。 6. **内容提供者(Content Provider)** (可能在ch39) - 内容提供者的概念和作用:内容提供...
1. **Android应用基础**:在ch15中,可能涉及到Android应用的基本结构和组件,如Activity、Intent、BroadcastReceiver、Service和ContentProvider。学习者可以了解到如何创建Android项目,设置布局文件,以及如何在...
《Android OPhone开发完全讲义源码Ch15.3》是针对移动应用开发者的一份珍贵资源,主要聚焦于Android平台上的OPhone开发技术。OPhone是中国电信与Android合作推出的一个定制化操作系统,它在原生Android的基础上进行...
`ProAndroid4_Ch19_TestReceivers.zip` 关注广播接收器(BroadcastReceiver)。广播接收器允许应用监听并响应系统或应用广播的事件,如网络状态改变、电池电量警告等。这部分源码会解释如何注册、编写和使用广播接收...