有没有办法确定是否有特定的主屏幕快捷方式 存在?
我的应用程序在设备的主屏幕上安装了一个快捷方式 在某些条件下的启动时间,我不想重复 出现的快捷方式。我也不希望Toast消息出现说 每次都有“快捷方式创建”或“快捷方式已经存在” 设备启动。我发现了一个没有文档的Intent Extra EXTRA_SHORTCUT_DUPLICATE将阻止重复的快捷方式 正在安装,但Launcher仍然显示“快捷方式” 存在“Toast message。我宁愿不依赖这个无证件 如果有支持的技术,则为Intent Extra。
答案 0 :(得分:0)
不是那种侵扰性的吗?为什么不只添加一次,让用户决定是否要保留它?
答案 1 :(得分:0)
当您的应用创建快捷方式时,为布尔值设置“true”并将其存储在存储中(例如小文件或共享偏好)。当您的应用尝试创建快捷方式时,检查它的值。
答案 2 :(得分:-1)
**// Checking if ShortCut was already added
SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE);
boolean shortCutWasAlreadyAdded = sharedPreferences.getBoolean("PREF_KEY_SHORTCUT_ADDED", false);
if (shortCutWasAlreadyAdded) return;
Intent shortcutIntent = new Intent(getApplicationContext(), MainActivity.class);
shortcutIntent.setAction(Intent.ACTION_MAIN);
Intent addIntent = new Intent();
addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "SBM");
addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(getApplicationContext(), R.drawable.ic_launcher));
addIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
sendBroadcast(addIntent);
// Remembering that ShortCut was already added
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putBoolean("PREF_KEY_SHORTCUT_ADDED", true);
editor.commit();**