从快捷方式读取数据

时间:2017-05-22 12:29:04

标签: android android-intent android-shortcut android-shortcutmanager

我正在使用此代码

在我的应用程序中创建一个Activity的多个快捷方式
Intent shortcutIntent = new Intent(getApplicationContext(), SingleChat.class);
shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);                       
shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);                      

Bitmap bm =  ((BitmapDrawable)contact_image.getDrawable()).getBitmap();       
Bitmap bti = Bitmap.createScaledBitmap(bm, 120, 120, false);                  

Intent addIntent = new Intent();                                              
addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);                    
addIntent.putExtra("user_id", csUserId);                   
addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, csUserName);      
addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON, bti);                          
addIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");          
getApplicationContext().sendBroadcast(addIntent);      

一切都非常适合快捷方式创建,但我想从快捷方式OR

中读取数据

我想在点击该快捷方式时阅读此user_id

我无法将其放在SharedPreferences中,因为它可以是多个快捷方式,每个快捷方式都链接到不同的user_id

我搜索过,到目前为止找不到任何东西。

在android 7.0之后,快捷方式已经得到了很大的改进,但是我必须让它适用于旧设备(比如从4开始)。

感谢。

1 个答案:

答案 0 :(得分:2)

  

一切都非常适合创建快捷方式

FWIW,我认为它不适用于Android O.

  

我想在点击该快捷方式时阅读此user_id。

将其作为shortcutIntent中的额外内容。