Je développe un plugin android cordova/phonegap pour lister le wifi autour de l'appareil.android JNI ERROR
Dans ma classe de plugin, je veux utiliser le WifiManager pour faire le travail. Voici mes méthode d'exécution:
public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException {
Log.d ("WifiLister", "action : " + action);
if ("WifiList".equals(action)) {
wifiList(callbackContext);
return true;
}
return false; // Returning false results in a "MethodNotFound" error.
}
Voici ma méthode de wifiList:
private void wifiList(CallbackContext callbackContext) throws JSONException{
WifiManager wifiManager = (WifiManager) cordova.getContext().getSystemService(Context.WIFI_SERVICE);
if (!wifiManager.isWifiEnabled()) {
callbackContext.error("Wifi disabled, please turn on Wifi and try again");
}
else{
// do something
}
sur l'appel de méthode isWifiEnabled, j'ai obtenu l'erreur suivante:
JNI ERROR (app bug): attempt to use stale local reference 0x1
VM aborting
fatal signal 11 (SISEGC) at 0Xdeadd00d (code=1)
j'ai lu trouvé la même erreur avec des gens qui veulent faire du code natif (C/C++) dans l'application Android, et ils doivent utiliser la méthode newGlobalRef pour. Mais ce n'est pas mon cas, je suis en code Java pur.
Quelqu'un peut-il aider?
Merci!
merci, il fallait android.permission.ACCESS_NETWORK_STATE pour moi. même si je ne l'utilise pas. peut-être un problème étrange de téléphone avec un appareil. –