Android: Wi-Fi включен в режиме ONCLICK, но вылетает - PullRequest
0 голосов
/ 04 августа 2011

Если Wi-Fi выключен, я показываю диалоговое окно с предупреждением, и когда я нажимаю кнопку «ОК» на сайте alerttdialog, Wifi должен включиться. GPS активируется, но вылетает, когда я нажимаю кнопку «ОК» на alerttdialog

с эмулятором он работает нормально, но когда я тестирую его на устройстве, он вылетает.

Я тестирую свое приложение в SAMSUNG GALAXY -S .

Я пытался с этим, но безрезультатно. Как это решить?

1)

WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
if (wifi.isWifiEnabled() == true) {
    Log.i("About WIFI", "WIFI is Enabled in your device");
    Toast.makeText(LoginActivity.this, "WIFI IS ON",
        Toast.LENGTH_LONG).show();
} else {
    Log.i("About WIFI", "WIFI is  NOT Enabled in your device");
    AlertDialog.Builder WIFIOFF = new Builder(
        LoginActivity.this);
    WIFIOFF.setCancelable(false);
    WIFIOFF.setTitle("Connection Error");
    WIFIOFF.setMessage(" Please Enable Your WIFI !");
    WIFIOFF.setPositiveButton("Ok",
        new DialogInterface.OnClickListener() {

            public void onClick(DialogInterface dialog,
                    int which) {
                // startActivity(new
                // Intent(Settings.ACTION_WIFI_SETTINGS));
                Context mContext = getApplicationContext();
                WifiManager wifi = (WifiManager) mContext
                    .getSystemService(Context.WIFI_SERVICE);
                wifi.setWifiEnabled(true);
            }
        });
    WIFIOFF.show();
}

2) внутри Alertdialog onclick Я пробовал этот код также

startActivity(new Intent(Settings.ACTION_WIFI_SETTINGS));

Идет переход на страницу настроек, после включения GPS происходит сбой и отображается сообщение « Приложение неожиданно остановилось, попробуйте снова »

В манифесте у меня есть эти разрешения

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.UPDATE_DEVICE_STATS"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>

Это ошибки logcat.

08-04 13:02:15.497: ERROR/WifiService(42): Failed to load Wi-Fi driver.
08-04 13:02:41.936: ERROR/WifiService(42): Failed to load Wi-Fi driver.
...