ホームスクリーンウィジェット(1 * 1)を作成しましたが、そのウィジェットからカメラとギャラリーのインテントチューザーを開こうとしています。他のクラスからインテントチューザーを開こうとしましたが、動作しません。ここに私の設定の活動からコードは次のとおりです。アプリウィジェットからカメラとギャラリーのインテントチューザーを開く方法
Intent clickIntent = new Intent(ConfigurationActivity.this, WidgetProviderSmall.class);
clickIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, mAppWidgetId);
PendingIntent pendingIntent = PendingIntent.getBroadcast(ConfigurationActivity.this, mAppWidgetId, clickIntent, 0);
views.setOnClickPendingIntent(R.id.img_widget, pendingIntent);
appWidgetManager.updateAppWidget(mAppWidgetId, views);
これは私のAppWidgetProviderクラスからです:
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction()==null) {
Bundle extras = intent.getExtras();
if(extras!=null) {
class.OpenIntentChooser();
}
}
else {
super.onReceive(context, intent);
}
}
任意の提案ですか?
this:http://stackoverflow.com/questions/11732872/android-how-can-i-call-camera-or-gallery-intent-together – KrishnaJ
[mcve]を入力してください。これには 'OpenIntentChooser()'の実装とそれが何をしていないのかの説明が含まれます。また、LogCatを確認してください。私が推測しなければならないことは、あなたがアクティビティを開始するために使用している 'Intent'に' FLAG_ACTIVITY_NEW_TASK'を含めていないことです。これは、 'BroadcastReceiver'からアクティビティを開始するときに必要となります。 LogCatメッセージはこれをあなたに指摘します。 – CommonsWare