セレクターを使用すると、Android は、この割り当てを永続的または一度だけ設定するオプションと共に、startActivity()
処理する資格のあるすべてのアプリを一覧表示します(ICSではアクション ボタン、2.x ではチェックボックス)。ただし、このコードの場合:Intent
Always
Just once
public class Redirector {
public static void showActivityWithChooser( Context context, int chooserLabelTitleId, Intent intent ) {
try {
context.startActivity( Intent.createChooser( intent,
context.getResources().getString( chooserLabelTitleId )) );
} catch( Exception e ) {
e.printStackTrace();
}
}
public static void viewInExternalApplication( Context context, String url ) {
Intent intent = new Intent( Intent.ACTION_VIEW );
intent.setData( Uri.parse( url ) );
intent.addFlags( Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET );
showActivityWithChooser( context, R.string.open_chooser_title, intent );
}
}
ボタンが表示Always | Just once
されず、選択を永続的にすることができません。Android がユーザーの選択を永続化できない原因となった、私が見落としていた要素は何ですか?
写真を見てください: 左のダイアログは私が見たいものですが、右は私が今得ているものです (両方のダイアログの異なる数のアプリケーションは関係ありません):