经过验证过的接收系统广播
2015-08-28 11:25
330 查看
1.安装应用后,首先要启动一次。
2.如果签名后,不可以用eclipse安装apk文件,手动安装好后,也要启动一次。
3.添加以下:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.RESTART_PACKAGES" />
4.添加以下:
<receiver android:name=".BootBroadcastReceiver" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.HOME" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.PACKAGE_ADDED" />
<action android:name="android.intent.action.PACKAGE_REMOVED" />
<action android:name="android.intent.action.PACKAGE_REPLACED" />
<data android:scheme="package" />
</intent-filter>
</receiver>
5.代码部分:
public class BootBroadcastReceiver extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
//接收广播:系统启动完成后运行程序
if (intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED))
{
Intent ootStartIntent = new Intent(context, Login_Activity.class);
ootStartIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(ootStartIntent);
}
//接收广播:安装更新后,自动启动自己。
if (intent.getAction().equals(Intent.ACTION_PACKAGE_ADDED) || intent.getAction().equals(Intent.ACTION_PACKAGE_REPLACED))
{
Intent ootStartIntent = new Intent(context, Login_Activity.class);
ootStartIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(ootStartIntent);
}
}
}
2.如果签名后,不可以用eclipse安装apk文件,手动安装好后,也要启动一次。
3.添加以下:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.RESTART_PACKAGES" />
4.添加以下:
<receiver android:name=".BootBroadcastReceiver" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.HOME" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.PACKAGE_ADDED" />
<action android:name="android.intent.action.PACKAGE_REMOVED" />
<action android:name="android.intent.action.PACKAGE_REPLACED" />
<data android:scheme="package" />
</intent-filter>
</receiver>
5.代码部分:
public class BootBroadcastReceiver extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
//接收广播:系统启动完成后运行程序
if (intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED))
{
Intent ootStartIntent = new Intent(context, Login_Activity.class);
ootStartIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(ootStartIntent);
}
//接收广播:安装更新后,自动启动自己。
if (intent.getAction().equals(Intent.ACTION_PACKAGE_ADDED) || intent.getAction().equals(Intent.ACTION_PACKAGE_REPLACED))
{
Intent ootStartIntent = new Intent(context, Login_Activity.class);
ootStartIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(ootStartIntent);
}
}
}
相关文章推荐
- Centos 上使用Mono+MVC5+WebApi+Sqlite
- 010editor 破解 扩展
- MongoDB跳出循环的两种方式
- Linux设备驱动模型的private_data 简单理解
- 【后缀数组之SA数组】【真难懂啊】
- nginx+tomcat集群负载均衡下tomcat故障后的的会话转移
- 生成注释
- 为什么匿名内部类参数必须为final类型
- 百度牵手大悦城 相爱相杀的零售与互联网需要新玩法
- 在textView中输入时避免键盘的遮挡
- 简单的邮件发送
- Linux下基于HTTP协议带用户认证的GIT开发环境设置
- 第一次作业
- fopen与读写的标识r,r+,rb+,rt+,w+.....
- Reveal 编译错误 Undefined symbols for architecture i386
- nginx负载均衡基于ip_hash的session粘帖
- VirturalBox中安装redhat9注意点
- 互联网世界的 “人工智能”——探秘 “深度学习” 的前世今生
- MongoDB内存使用原理
- PL/SQL Developer,大小写转换