アプリから Android4.2 設定の WifiDisplaySettingsActivity を開きたいです。
私は試した
Intent i;
PackageManager manager = getActivity().getPackageManager();
try {
i = manager.getLaunchIntentForPackage("com.android.settings.wfd");
if (i == null)
throw new PackageManager.NameNotFoundException();
i.addCategory(Intent.ACTION_MAIN);
startActivity(i);
} catch (PackageManager.NameNotFoundException e) {
}
と
final Intent intent = new Intent(Intent.ACTION_MAIN, null);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
final ComponentName cn = new ComponentName("com.android.settings.wfd","com.android.settings.wfd.WifiDisplaySettings");
intent.setComponent(cn);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
しかし、どれも機能しませんでした。AndroidManifest.xml にアクセスしてコードを確認しました
<activity android:name="Settings$WifiDisplaySettingsActivity"
android:label="@string/wifi_display_settings_title"
android:taskAffinity=""
android:excludeFromRecents="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.settings.WIFI_DISPLAY_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data android:name="com.android.settings.FRAGMENT_CLASS"
android:value="com.android.settings.wfd.WifiDisplaySettings" />
</activity>
問題は、それがフラグメントクラスであることを知っており、パッケージ名がcom.android.settings.wfdであることは知っていますが、まだ開く方法がわかりません。特に、このようなアクティビティ名を処理する方法がわかりません
設定 $WifiDisplaySettingsActivity
誰かアドバイスをくれませんか???plz....どうもありがとう
問題はsettings.WIFI_DISPLAY_SETTINGSですが、ACTION_WIFI_SETTINGSではないため、Eclipseはコンパイルできません
追加:
public final class WifiDisplaySettings extends SettingsPreferenceFragment implements PersistentGroupInfoListener {
private static final String TAG = "WifiDisplaySettings";
private static final int MENU_ID_SCAN = Menu.FIRST;
private static final int MENU_ID_CREATE_GROUP = Menu.FIRST + 1;
private static final int MENU_ID_REMOVE_GROUP = Menu.FIRST + 2;
それはSetting Preference Fragmentです...どうやって開くのですか???