7

ほとんどの場合、ユーザーの場所を知る必要があるアプリがあります。

場所にアクセスする必要があるときは、次のようにします。

final AlertDialog.Builder builder = new AlertDialog.Builder(
                        MapScreen.this);
builder.setTitle("MyAppName");
builder.setMessage("The location service is off. Do you want to turn it on?");
                builder.setPositiveButton("Enable location",
                        new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(
                                    final DialogInterface dialogInterface,
                                    final int i) {
                                startActivity(new Intent(
                                        android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS));
                            }
                        });
builder.setNegativeButton("Continue without location", null);
builder.create().show();

ただし、GPS から得られる情報は常に十分に正確であるとは限りません。Wi-Fi は常に十分な精度を提供してくれるので、位置情報をオンにするようにユーザーに求めるのと同じ方法で、Wi-Fi をオンにするようにユーザーに要求します。オンにするだけではなく、ユーザーに通知して手動で有効にしたいのです。

WiFi メニューをユーザーに提供する意図はありますか?

4

3 に答える 3

14

次のインテントは、Wi-Fi、Bluetooth、モバイル ネットワークなどのワイヤレス設定を示しています。

startActivity(new Intent(Settings.ACTION_WIRELESS_SETTINGS));

設定の完全なリスト: https://developer.android.com/reference/android/provider/Settings.html

メソッドのドキュメントstartActivity: https://developer.android.com/reference/android/app/Activity.html#startActivity(android.content.Intent)

(覚えておいstartActivityてください。投げて忘れるだけです。ユーザーが行ったことの応答をキャプチャしたい場合は、代わりに を呼び出すことができますstartActivityForResult。この場合はおそらく必要ありません)

于 2013-05-14T09:16:27.423 に答える