android 创建桌面快捷方式的时候设置应用名称和图标是完全没有问题,但是点击快捷方式的时候出现“您的手机上未安装应用程序“,这是快捷方式的执行目标设置错误,也就是启动Activity。有些应用的启动Activity是欢迎界面,创建快捷方式的代码在其他的Activity里。

设置名称和图标

Intent shortcut = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
//设置快捷方式名称
shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name));
shortcut.putExtra("duplicate", false); // 不允许重复//设置快捷方式图标
ShortcutIconResource iconRes = Intent.ShortcutIconResource.fromContext(context, R.drawable.ic_launcher);
shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, iconRes);

快捷方式是通过 Intent启动应用,下面是Intent方法中set打头的方法。
这里通过setClassName设置,不管在哪个Activity里写创建快捷方式的代码,只要拿到启动Activity的类名就可以。

 在启动Activity里写创建快捷方式的代码

Intent shortcutIntent = new Intent(Intent.ACTION_MAIN);
shortcutIntent.setClassName(this, this.getClass().getName());
shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);

 在非启动Activity里写创建快捷方式的代码

注意: 如果启动Activity直接写字符串,则前面必须加点(.)

例1:通过对象获取启动Activity类名(下面假设启动Activity的类名是SplashActivity)

Intent shortcutIntent = new Intent(Intent.ACTION_MAIN);
shortcutIntent.setClassName(this, SplashActivity.class.getName());
shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);

例2:直接写字符串

Intent shortcutIntent = new Intent(Intent.ACTION_MAIN);
shortcutIntent.setClassName(this, ".SplashActivity"); //不要忘了前面加点
shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);

例3:包名也写字符串

Intent shortcutIntent = new Intent(Intent.ACTION_MAIN);
shortcutIntent.setClassName("com.myapp.test", ".SplashActivity");
shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);

也可以这么写,道理都一样,只要明确启动Activity就可以

ComponentName comp = new ComponentName(this, SplashActivity.class.getName());
shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, new Intent(Intent.ACTION_MAIN).setComponent(comp));

最后广播

sendBroadcast(shortcut);

最后留下全部代码,方便复制,^-^

Intent shortcut = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
//设置快捷方式名称  原创:http://www.cnblogs.com/androidheart
shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name));
shortcut.putExtra("duplicate", false); // 不允许重复//设置快捷方式图标
ShortcutIconResource iconRes = Intent.ShortcutIconResource.fromContext(context, R.drawable.ic_launcher);
shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, iconRes);Intent shortcutIntent = new Intent(Intent.ACTION_MAIN);
shortcutIntent.setClassName("com.myapp.test", ".SplashActivity");
shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);sendBroadcast(shortcut);

这里只是对“未安装应用程序”的解决方法的一种情况,其他的情况我暂时没有碰到,如果有人遇到别的情况,请给我留言。

转载于:https://www.cnblogs.com/androidheart/archive/2013/04/20/3032628.html

android 您的手机上未安装应用程序的解决方法相关推荐

  1. 关于Android系统中“你的手机上未安装应用程序”问题

    有时候我们把写好的APK安装到Android系统中后,点击应用程序图标后程序并不运行,却提示"你的手机上未安装应用程序",这个问题多半是AndroidManifest.xml文件不 ...

  2. Android解决你的手机上未安装应用程序。的问题

    在编程的时候经常需要使用Intent,有很多页面需要进行跳转,今天遇到一个问题,每次把程序同步到平板电脑,然后退出程序重新进入程序后提示"你的手机上未安装应用程序."左看又看都不行 ...

  3. 你的手机上未安装应用程序”的解决方案

    最近开发了一个android程序,使用MyEclipse调试安装可以运行,退出重新点击我的App,结果老出现烦人的字眼"你的手机上未安装应用程序",我晕,你妹啊.网上搜索了一下,有 ...

  4. “你的手机上未安装应用程序”的解决方案

    最近开发了一个android程序,使用MyEclipse调试安装可以运行,退出重新点击我的App,结果老出现烦人的字眼"你的手机上未安装应用程序",我晕,你妹啊.网上搜索了一下,有 ...

  5. 打开应用时出现“你的手机上未安装应用程序”--实际上该应用已经安装的解决方案

    最近我在做开发时,连接我的手机部署好应用时,点击桌面图标出现"你的手机上未安装应用程序"的提示,通过查看已安装的应用列表,确信我已经安装上了该应用,但是为什么会出现"你的 ...

  6. 您的手机上未安装应用程序 / App isn‘t installed

    安装遇到错误,点击应用图标,提示您的手机上未安装应用程序或App isn't installed. 错误原因: 这种情况出现的原因是系统找不到或无法启动应用的Launcher Activity. 在本 ...

  7. 您的手机上未安装应用程序 android 点击快捷方式提示未安装程序的解决

    最近APP出现一个很奇怪的问题,在Android 4.4.2和android 4.4.3系统上点击应用的快捷方式,打不开应用,而且会提示未安装程序. 确认了应用的MainActivity中设置了and ...

  8. Android手机提示“未安装应用程序”

    用eclipse调试应用时,遇到了这个问题,网上给出的解决方案倒是挺多,但似乎一个都没奏效,而且我手机也重启了,还是有问题,郁闷ing- 然后看到一篇文章指出,可能不是签名和SD的卡问题,而是我们自己 ...

  9. 惠惠购物助手android版3.8.2无法安装的原因及解决方法

    今天在android手机上安装惠惠购物助手最新版(3.8.2)的时候,提示安装失败.期初,还以为自己手机有问题,但是安装了几个软件都正常之后判断原因出在app上. 调试错误信息 打开android s ...

最新文章

  1. IIS部署ASP.Net Core 502.5错误和解决
  2. 系统模块——什么是系统模块、path 路径操作、相对路径VS绝对路径
  3. robotframework 配置过程中遇到的问题
  4. Linux下安装、查看、删除软件包
  5. @Transactional和@Async 使用场景
  6. BugkuCTF-Crypto题这不是md5
  7. Java 遍历指定目录下的所有目录
  8. 开发整理笔记Markdown基本使用
  9. 分支限界算法c语言_算法学习计划
  10. 在Ubuntu 16.04下安装nodejs
  11. Codeforces Round #383 (Div. 1): D. Arpa’s letter-marked tree…(dsu on tree+状压)
  12. AE+BodyMovin导出动画JSON文件
  13. 拼多多商品按关键词采集爆款商品
  14. Activity工作流
  15. HTML中怎么创建表单,如何在HTML中创建表单
  16. 基于plc的污水处理,组态王动画仿真,带PLC源代码,组态王源代码
  17. HDU 6318 Swaps and inversions
  18. PageRank实践-博客园用户PageRank排名
  19. 计算机网络原理知识点之ISO模型解析
  20. 在Controller注入Service报错的解决方法

热门文章

  1. 全国城市气象对应编码
  2. java 剪切音乐_怎么剪切一段音乐其中的片段
  3. 6,xilinx 7系列FPGA理论篇——时钟操作法则
  4. 论文提要“Beyond Frontal Faces: Improving Person Recognition Using Multiple Cues”
  5. 三星s10更新Android10,经历了三星s10的最近一次升级,我对安卓对三星有了新的认知...
  6. mysql分布式主键_技术分享 | 优化 InnoDB 的主键
  7. magic版本和android版本,华为荣耀Magic进化版和稳定版区别是什么?
  8. Jupyter Notebook使用过程中的七七八八
  9. microbit和python_Microbit MicroPython 介绍
  10. 2006年上市公司A股市值百强榜单