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 次 |
最近记录: |