通过广播启动另一个应用的Activity
来源:互联网 发布:jquery清空input数据 编辑:程序博客网 时间:2024/05/18 23:11
原文:http://www.cnblogs.com/keshuangjie/archive/2012/08/31/2665298.html
需求:现在有应用A和应用B,我需要在A应用中启动B应用中的某个Activity
实现:A应用中的Activity发送广播,关键代码如下:
String broadcastIntent = "com.example.android.notepad.NotesList";//自己自定义
Intent intent = new Intent(broadcastIntent);
this.sendBroadcast(intent);
B应用中需要一个BroadcastReceiver来接收广播,取名TestReceiver继承BroadcastReceiver重写onReceive方法启动一个activity,关键代码如下:
if(intent.getAction().equals("com.example.android.notepad.NotesList")){
Intent noteList = new Intent(context,NotesList.class);
noteList.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(noteList);
}
到这代码就完成了,当然在AndroidManifest.xml中要对TestReceiver进行注册,代码如下:
<receiver android:name="TestReceiver">
<intent-filter>
<action android:name="com.example.android.notepad.NotesList"/>
</intent-filter>
</receiver>
这样就完成了通过广播启动另一个应用Activity。
注意问题:Context中有一个startActivity方法,Activity继承自Context,重载了startActivity方法。如果使用 Activity的startActivity方法,不会有任何限制,而如果使用Context的startActivity方法的话,就需要开启一个新的task,解决办法是,加一个flag,也就是这句noteList.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);的作用。如果不添加这句,就会报android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity,Caused by: android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
- 通过广播启动另一个应用的Activity
- android--通过广播启动另一个应用的Activity
- Android开发——通过广播启动另一个应用的Activity
- (转)Android开发——通过广播启动另一个应用的Activity
- Android 通过广播启动Activity
- 通过Intent的Component属性来启动另一个Activity
- 安卓 通过 Menu 启动另一个 Activity
- 通过显式Intent启动另一个Activity
- 启动另一个Activity的方式
- android应用开发实践三----Atcity 通过Intent 来启动另一个Activity来实现简易拨号
- Activity启动另一个Activity的方式
- Activity启动另一个Activity的方式总结
- Android中通过intent启动另一个应用
- Android开机自启动应用通过广播
- Android在一个应用中启动另一个应用的Activity时失败的解决办法
- Android在一个应用中启动另一个应用的Activity的办法
- 【Android】在一个应用中启动另一个应用的Activity时失败的解决办法
- Android在一个应用中启动另一个应用的Activity时失败的解决办法
- iOS编程(双语版)-视图-Autolayout代码初步
- hdu 2063(二分图最大匹配,匈牙利算法,水题)
- iOS UITextField 输入含小数的数字(位数限制)
- Sql -- 练习3 递归查询
- spring引用另一xml文件中的bean
- 通过广播启动另一个应用的Activity
- 图的深度优先搜索和广度优先搜索
- Machine Learning Week 2 ex1
- 关联表查询
- 各种正则验证
- The content of element type "web-app" must match "(icon?,display-name?,description?,distributable?,c
- hdu 5201 The Monkey King(容斥原理,排列组合)
- git的使用
- vsftp日志xferlog格式分析