5

ShareActionProvider と共にアプリでActionBarSherlockを使用しています。ActionBarSherlock の例と非常によく似た方法で、共有インテントを使用して画像を共有しています。

Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, uri);
shareIntent.setType("image/*");

すべてが正常に機能しています。唯一の問題は、アプリが共有イメージ コンテンツ ("image/*") も受け入れるため、アプリのリストに表示されることです。とにかくこのあたりはありますか?

編集:

これが私の意図フィルターです:

<intent-filter>
    <action android:name="android.intent.action.SEND"/>
    <category android:name="android.intent.category.DEFAULT"/>
    <data android:mimeType="image/*"/>
</intent-filter>
4

1 に答える 1

0

あなたが何をしたいのかを私が理解している場合、基本的には、インテントフィルターを動的に有効/無効にする必要があります。

私が知っているところまで、あなたが望むものを直接達成することはできませんが、PackageManager と setComponentEnabledSetting()を介して、アクティビティを無効にする同じ効果を得ることができます。明らかに、「レシーバー」アクティビティを無効にすることがアプリで可能である場合。

于 2013-06-02T23:36:37.653 に答える