问题
While implementing the static Shortcuts using shortcut.xml, i would like to pass few bundle extras with my intent.
need the passed extras to decide on few functionality in the target class after launching the app.
is it possible to access the extras? how and where to access it?
Any leads would be highly appreciated
回答1:
I'm not sure if there is another way, but I use this:
<intent
android:action="android.intent.action.VIEW"
android:targetPackage="target.package"
android:targetClass="activity.with.package">
<extra android:name="extraID" android:value="extravalue" />
</intent>
Then you can access extras as usual.
回答2:
Than why don't you create dynamic shortcuts?
ShortcutManager shortcutManager = getSystemService(ShortcutManager.class);
Intent thirdIntent = new Intent(this,ThirdActivity.class);
thirdIntent.setAction(Intent.ACTION_VIEW);
ShortcutInfo thirdScreenShortcut = new ShortcutInfo.Builder(this, "shortcut_third")
.setShortLabel("Third Activity")
.setLongLabel("This is long description for Third Activity")
.setIcon(Icon.createWithResource(this, R.mipmap.ic_launcher))
.setIntent(thirdIntent)
.build();
shortcutManager.setDynamicShortcuts(Collections.singletonList(thirdScreenShortcut));
You can pass whatever you want to send in Intent
and access it to receiver activity.
来源:https://stackoverflow.com/questions/43361498/android-quick-shortcuts-passing-intent-extraor-some-data-in-shortcuts-xml