码迷,mamicode.com
首页 > 移动开发 > 详细

Android Home键 点快捷菜单应用重启问题【完美解决】

时间:2014-12-04 12:13:03      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:home键   点快捷菜单应用重启问题   

前言

1、这个问题困扰我n久n久

2、网上出现很多解决方案,大多是设置lanchModel 虽然这样能解决一些问题,但是不能完全解决,且与我的情况也不相符


解决方案:

方案一:

    1、如果你的程序有管理activity的栈,可以在启动LogoActivity的onCreate中判断这个栈是存在其他的activity 如果有 本身直接 finish + return 。这样是ok,但是总感觉有种不靠谱的感觉。


方案二:

   2、 无意中发现原来是创建的快捷方式的问题,快捷方式的flag或者intent的创建方式导致重启。

        关于如何创建快捷方式 这里省略

    看代码

   public void addShortCut(){
        
        Intent shortcut = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
        // 设置属性
    ...

 ...

 ...

        //点击快捷方式的操作

        这里的intent 必须要新创建的,不能使用 getintent 或者getPackmager.getLaunchIntentFor...等方式创建,如果这样创建导致 setflag无效
        Intent intent = new Intent();

         intent.setComponent(getComponentName());

         intent.setAction(intent.ACTION_MAIN);

         intent.addCategory(Intent.CATEGORY_LAUNCHER);

       //要添加这句话

        intent.setFlags(Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED| Intent.FLAG_ACTIVITY_NEW_TASK);
       
        // 设置启动程序
        shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, intent);
        //广播通知桌面去创建
        this.sendBroadcast(shortcut);
    }

      


Android Home键 点快捷菜单应用重启问题【完美解决】

标签:home键   点快捷菜单应用重启问题   

原文地址:http://blog.csdn.net/lovehankuo/article/details/41720857

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!