WifiManager.setWifiEnabled некорректно работает в honeycomb

#android #android-3.0-honeycomb #wifimanager

#Android #android-3.0-honeycomb #wifimanager

Вопрос:

Я занят написанием небольшой программы для автоматизации моего Wi-Fi на моей вкладке 3.1 honeycomb и моем телефоне 2.3.5 gingerbread.

На телефоне все отлично работает, но когда мое приложение пытается отключить мой Wi-Fi на honeycomb, оно отключается.

Мое приложение в основном устанавливает и сигнализирует о запуске пользовательской трансляции, которая затем перехватывается моим широковещательным приемником. Я могу подтвердить, что трансляция запущена и вызывает кашель, но, похоже, honeycomb выдает исключение во время выполнения при запуске .setWiFiEnabled(false). Я проверил разрешения, и они выглядят правильно. (Он работает в ГБ).

Вот часть моего кода, чтобы попытаться лучше объяснить.

Манифест

 <uses-sdk android:minSdkVersion="7" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    <receiver android:name="WiFiOffDoerReceiver" android:enabled="true">
        <intent-filter>
            <action android:name="za.co.cjoliver.WIFIOFFDOER"/>
        </intent-filter>
    </receiver>
  

Код

 import android.app.AlarmManager;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.net.wifi.WifiManager;
import android.util.Log;

public class WiFiOffDoerReceiver extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {
    Log.d("WiFi Beater3", "in WiFiOffDoerReceiver.onReceive");
    WifiManager myWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
    myWifiManager.setWifiEnabled(false);
}
  

}

Позвольте мне уже поблагодарить вас за любую помощь.

Ответ №1:

Я не уверен, что именно вы выдаете, но похоже, что это как-то связано с вашим ПЗУ, если оно укоренено или нет и т. Д.

Другой возможностью является используемый вами API. Требуется ли для HC версия, отличная от GB?

Я не думаю, что это ваш код, поэтому, если вы не можете понять это, попробуйте предоставить информацию о разнице между вкладкой и телефоном (помимо очевидного).

Просто догадка, поэтому прошу прощения, если это не так.

Удачи!

Комментарии:

1. На обоих установлены пользовательские ПЗУ. Восстановит как на складе, так и снова протестирует. Будет обновляться после тестирования. СПАСИБО