WebAPI : mode avion
WebAPI : mode avion
Bonjour,
Je voudrais savoir s'il est possible (et comment) d'avoir accès au mode avion en développement (activation/désactivation). J'ai lu je ne sais plus où qu'il fallait que l'appli soit privileged, mais je ne trouve pas la trace de l'API à utiliser.
Merci pour votre aide.
Votre Navigateur : Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0
Je voudrais savoir s'il est possible (et comment) d'avoir accès au mode avion en développement (activation/désactivation). J'ai lu je ne sais plus où qu'il fallait que l'appli soit privileged, mais je ne trouve pas la trace de l'API à utiliser.
Merci pour votre aide.
Votre Navigateur : Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0
Re: WebAPI : mode avion
Bonjour,
je ne crois pas que ce soit possible avec une app privileged. Tu peux savoir si le téléphone est connecté (lien MDN) mais le mode avion ne semble pas disponible à l'heure actuelle. L'API qui semble donner des infos sur la connectivité avec une app privileged est probablement mobileNetwork listée ici mais elle ne semble dispo que pour les apps du système en fait.
Si c'est pour hacker gaia pour une app sytème perso, tu peux jeter un coup d'oeil à ce fichier airplane_mode_helper.js et à son utilisation dans l'apps système settings (par ce fichier je crois).
Bonne chance !
Votre Navigateur : Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Firefox/38.0
je ne crois pas que ce soit possible avec une app privileged. Tu peux savoir si le téléphone est connecté (lien MDN) mais le mode avion ne semble pas disponible à l'heure actuelle. L'API qui semble donner des infos sur la connectivité avec une app privileged est probablement mobileNetwork listée ici mais elle ne semble dispo que pour les apps du système en fait.
Si c'est pour hacker gaia pour une app sytème perso, tu peux jeter un coup d'oeil à ce fichier airplane_mode_helper.js et à son utilisation dans l'apps système settings (par ce fichier je crois).
Bonne chance !
Votre Navigateur : Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Firefox/38.0
Re: WebAPI : mode avion
Merci, ça semble effectivement plus compliqué que prévu...
Votre Navigateur : Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0
Votre Navigateur : Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0
Ubuntu 16.04 (32 et 64 bits)
Firefox et Thunderbird : dernières versions stables utilisées
Firefox et Thunderbird : dernières versions stables utilisées
Re: WebAPI : mode avion
bon en fait j'ai trouvé, ce n'est trop complexe mais il faut avoir une app certified donc avoir ces lignes dans le manifest :
Cela te donne accès à l'API navigator.mozSettings.
J'ajoute deux boutons dans un fichier index.html (d'un template de base d'une app):
Pendant que ça mijote, je m'attaque au fichier javascript de l'app (j'ai mis l'intégralité de mon code et il y a surement plus esthétique comme manière d'écrire mais bon, je ne suis pas un dév pro ...):
voilà, j'enregistre le tout, je branche mon tél et en passant par WebIDE, ça semble marcher normalement (il faut toutefois que j'aille sur une autre app pour qu'il me demande mon code PIN à la sortie du mode avion).
Pour info, j'ai pu trouver la liste des paramètres accessibles via l'API mozSettings ici.
En espérant que ça puisse t'aider !
Code : Tout sélectionner
"type": "certified",
"permissions": {
"settings":{ "access": "readwrite" }
}
J'ajoute deux boutons dans un fichier index.html (d'un template de base d'une app):
Code : Tout sélectionner
<button id="active">Activer Mode Avion </button>
<button id="desactive">Désactiver Mode Avion </button>
Code : Tout sélectionner
(function() {
'use strict';
/*Ajout d'un écouteur sur le status du paramètre */
/* voir https://developer.mozilla.org/en-US/docs/Web/API/Settings_API#Listening_for_change_in_settings */
function handleAPM(event) {
console.log(event.settingValue);
}
navigator.mozSettings.addObserver('airplaneMode.status', handleAPM);
/*Activation/désactivation de Mode avion */
/* https://developer.mozilla.org/en-US/docs/Web/API/Settings_API#Changing_settings */
var active_bt = document.getElementById("active"),
desactive_bt = document.getElementById("desactive");
function setAPM(value) {
var lock = navigator.mozSettings.createLock(),
result = lock.set({'airplaneMode.enabled': value });
result.onsuccess = function () {
console.log("APM = " + value);
};
result.onerror = function () {
console.log("An error occure, the settings remain unchanged");
};
}
function active(e){
setAPM(true);
}
function desactive(e){
setAPM(false);
}
/* Ajout d'un évènement sur chaque bouton (pour une démo explicite)*/
active_bt.addEventListener('click', active, false);
desactive_bt.addEventListener('click', desactive, false);
}
)();
Pour info, j'ai pu trouver la liste des paramètres accessibles via l'API mozSettings ici.
En espérant que ça puisse t'aider !
Re: WebAPI : mode avion
Celle ci est maintenant officiellement documentée ici :fabbox a écrit :bon en fait j'ai trouvé, ce n'est trop complexe mais il faut avoir une app certified donc avoir ces lignes dans le manifest :
Pour info, j'ai pu trouver la liste des paramètres accessibles via l'API mozSettings ici.
https://developer.mozilla.org/en-US/Fir ... tings_list
Re: WebAPI : mode avion
Héhé mais tout le truc c'est que la liste n'est pas à jour (ça bouge vite et je n'ai pas eu le courage d'ajouter les changements sur le mdn). Tu n'y trouvera pas le réglage pour le mode avion. C'est pour ça que je donnais la liste du code (qui devrait être maintenue à jour) :wink
Re: WebAPI : mode avion
Aaah merci je n'avais pas vu la réponse ! Bizaremment je n'ai pas reçu de notif' à l'époque, j'avais lâché l'affaire (mais j'en ai reçu une aujourd'hui, ouf).
Je vais regarder ça... quand je me remettrai le nez dans ce code, merci
Je vais regarder ça... quand je me remettrai le nez dans ce code, merci

Ubuntu 16.04 (32 et 64 bits)
Firefox et Thunderbird : dernières versions stables utilisées
Firefox et Thunderbird : dernières versions stables utilisées
Qui est en ligne ?
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité