摘要:本文将带你了解Android应用开发Android 8.0 App 安装卸载流程,希望本文对大家学Android有所帮助。
本文将带你了解Android应用开发Android 8.0 App 安装卸载流程,希望本文对大家学Android有所帮助。
<
此文章为了验证Android 8.0 安装,卸载和更新一个应用时广播的接受状态, 主要是更新一个应用时都会接收到那些广播, 先接收到那些广播, 下面就以一个简单的例子来验证这些:
public class PackageInstallReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { //接收安装广播 if (intent.getAction().equals(Intent.ACTION_PACKAGE_ADDED)) { String packageName = intent.getData().getSchemeSpecificPart(); Log.e("cjl","install app packageName = "+packageName); } //接收卸载广播 if (intent.getAction().equals(Intent.ACTION_PACKAGE_REMOVED)) { String packageName = intent.getData().getSchemeSpecificPart(); Log.e("cjl","uninstall app packageName = "+packageName); boolean isReplace = intent.getBooleanExtra(Intent.EXTRA_REPLACING, false); Log.e("cjl","isReplace = "+isReplace); } //接收升级更新广播 if (intent.getAction().equals(Intent.ACTION_PACKAGE_REPLACED)) { String packageName = intent.getData().getSchemeSpecificPart(); Log.e("cjl","upgrade app packageName = "+packageName); } } public IntentFilter getIntentFilter() { IntentFilter intentFilter = new IntentFilter(); intentFilter.addAction(Intent.ACTION_PACKAGE_ADDED); intentFilter.addAction(Intent.ACTION_PACKAGE_REMOVED); intentFilter.addAction(Intent.ACTION_PACKAGE_REPLACED); intentFilter.addDataScheme("package"); return intentFilter; } public void register(Context context) { context.registerReceiver(this, getIntentFilter()); } public void unregister(Context context) { context.unregisterReceiver(this); }}
新建一个广播接收器, 监听安装, 卸载和更新的广播, Android 在 8.0 之后禁止使用静态注册的方式去注册这些广播, 只能动态注册, 下面是代码:
public class MainActivity extends AppCompatActivity { private PackageInstallReceiver mReceiver; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mReceiver = new PackageInstallReceiver(); mReceiver.register(this); } @Override protected void onDestroy() { super.onDestroy(); mReceiver.unregister(this); }}
结果如截图所示:
安装流程
只收到安装广播
卸载广播
只收到卸载广播
更新流程:
更新的时候先收到卸载的广播, 然后收到安装的广播, 最后收到更新的广播
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之Android频道!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号