launcher启动应用崩溃的问题

qiangv 2016-12-20 09:31:12
A是一个launcher,B是一个会crash的APP。
A通过startIntent启动了B,B马上crash,进而导致A也被force stop了。

请问这个有什么处理方法吗?想达到的目标是B崩溃了A也不能崩溃。
...全文
553 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
m0_45115803 2019-05-26
  • 打赏
  • 举报
回复
你好可以看看我的帖子嘛,很急诶
qiangv 2016-12-20
  • 打赏
  • 举报
回复
就是这种方式的。5.1才有这个问题。
新靖界 2016-12-20
  • 打赏
  • 举报
回复
试下下面的启动方法: Intent Intent = mContext.getPackageManager() .getLaunchIntentForPackage("包名"); startActivity(Intent);
qiangv 2016-12-20
  • 打赏
  • 举报
回复
private Intent getAppIntent(String  packageName) {
        Intent intent = new Intent(Intent.ACTION_MAIN);
        intent.addCategory(Intent.CATEGORY_LAUNCHER);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
        String mainAct = null;
        List<ResolveInfo> list = getContext().getPackageManager().queryIntentActivities(intent, 0);
        int count = list.size();
        for(int i = 0;i<count;i++){
            ResolveInfo rinfo = list.get(i);
            if (rinfo.activityInfo.packageName.equals(packageName)) {
                mainAct = rinfo.activityInfo.name;
                break;
            }
        }
        if (TextUtils.isEmpty(mainAct)) {
            return null;
        }
        intent.setComponent(new ComponentName(packageName, mainAct));

        long serialNumber = -1;
        //17
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
            UserManager mUserManager = (UserManager)getContext().getSystemService(Context.USER_SERVICE);
            serialNumber = mUserManager.getSerialNumberForUser(android.os.Process.myUserHandle());
        }
        intent.putExtra("profile", serialNumber);
        return intent;
    }
这样子都不行。。。崩溃了。。。
我不是很帅 2016-12-20
  • 打赏
  • 举报
回复
Intent intent = new Intent(Intent.ACTION_MAIN);
			intent.addCategory(Intent.CATEGORY_LAUNCHER);
			intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
					| Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
			ComponentName cn = new ComponentName(mContext.getPackageName,
					packageName);
			intent.setComponent(cn);
			mContext.startActivity(intent);
兄弟可以试试

80,471

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧