0

GPS またはネットワーク操作を必要とする位置検索アプリケーションを構築しています。ユーザーを GPS またはワイヤレス設定に誘導して、オンにしていなければ強制的にオンにできるようにしたいと考えています。私の質問は、設定ページの後でプロバイダーが本当にオンになっているかどうかを確認するにはどうすればよいですか?

以下は、ユーザーを設定に誘導する通常のコードです。その後、私は何をしますか?

LocationManager service = (LocationManager) getSystemService(LOCATION_SERVICE);
    boolean enabled = service
            .isProviderEnabled(LocationManager.GPS_PROVIDER);
    if (!enabled) {
        Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
        startActivity(intent);
    } 
4

2 に答える 2

4

その後、私は何をしますか?

何もない。

おそらく (できれば?)onResume()アクティビティで GPS を使用できるかどうかを確認していると思われます。設定アクティビティからアクティビティに制御が戻ると、そのロジックが再度呼び出されます。したがって、同じロジックをもう一度実行します。

于 2013-03-05T21:43:43.983 に答える
0

startActivity の代わりに startActivityForResult を使用します。次に、onActivityResult で isProviderEnabled をもう一度確認します。GPS同期ができるまでidProviderEnabledがtrueを返さない限り、これはうまくいくはずです。同じことがwifiでも機能するはずです。

于 2013-03-05T21:43:24.440 に答える