Tom*_*Tom 5 serialization android android-widget android-intent
也许我会以错误的方式解决这个问题,但我想在我自己的应用程序中响应我的Android AppWidget的点击事件并启动一个Activity.当我设置PendingIntent我有另一个Intent我想要点击时启动.我onStartCommand使用这一行:
final Intent mLaunchIntent = (Intent) intent.getParcelableExtra(Widget.EXTRA_INTENT);
Run Code Online (Sandbox Code Playgroud)
当我打电话时setOnClickPendingIntent我之前有这条线:
mSendingIntent.putExtra(Widget.EXTRA_INTENT, (Parcelable) mLaunchIntent);
Run Code Online (Sandbox Code Playgroud)
因此即使两行都mLaunchIntent有效Intent,第一行也缺少大量数据.startActivity然后调用失败,因为Intent它无效.
我想知道是否有可能,以及如何Intent在Intent没有严格调用的情况下发送另一个内部,putExtras因为该方法简单地将附加内容添加Intent到下一个.我想将这两个分开并且易于访问.
Tom*_*Tom 10
我实际上弄清楚了,解决方案非常简单.mLaunchIntent不应该被投射Parcelable或数据丢失.
mSendingIntent.putExtra(Intent.EXTRA_INTENT, mLaunchIntent);
Run Code Online (Sandbox Code Playgroud)
这就是我需要Intent通过另一个发送的所有内容Intent.
您可以通过以下方式将 Intent 置于 Intent 中:
Intent intent = new Intent();
intent.putExtra(Intent.EXTRA_INTENT, new Intent());
Run Code Online (Sandbox Code Playgroud)
要从意图中检索意图(从活动中),您可以执行以下操作:
Intent intent = getIntent().getParcelableExtra(Intent.EXTRA_INTENT);
Run Code Online (Sandbox Code Playgroud)
不能用aservice来解析Intent吗?
| 归档时间: |
|
| 查看次数: |
2764 次 |
| 最近记录: |