IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Plantage sendBroadcast avec KitKat


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Inscrit en
    Mars 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 3
    Par défaut Plantage sendBroadcast avec KitKat
    Bonjour

    Novice en DEV sous Android, j'étudie des exemples pour voir comment cela fonctionne.
    J'ai entre autre trouvé cet exemple pour le mode avion : http://www.compiletimeerror.com/2014...roid-with.html
    Avec l'émulateur (4.4.2) l'application plante lors du passage en mode avion sur l'instruction Sur un Motorola Moto E (4.4.2) idem
    Par contre sur un HTC Explorer 2.3.5, cela fonctionne

    J'ai aussi constaté que certaines application du Googleplay pour le changement de mode avion posaient problème.

    Il y a t'il une solution à ce problème ?

    Fabruce

  2. #2
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Par défaut
    Rappel : un message disant en substance "ça ne marche pas" sans information supplémentaire ne peut se voir fournir aucune aide, ou très limitée, car nous n'avons pas assez d'éléments pour aider.
    Merci donc de fournir la Stacktrace de ton crash au minimum
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  3. #3
    Candidat au Club
    Inscrit en
    Mars 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 3
    Par défaut
    La logcat, je travaille plus sur des DUMP mais sur un autre système.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    06-01 18:19:59.870: D/gralloc_goldfish(829): Emulator without GPU emulation detected.
    06-01 18:21:21.712: I/Choreographer(829): Skipped 63 frames!  The application may be doing too much work on its main thread.
    06-01 18:21:25.852: W/Settings(829): Setting airplane_mode_on has moved from android.provider.Settings.System to android.provider.Settings.Global, returning read-only value.
    06-01 18:21:25.862: W/Settings(829): Setting airplane_mode_on has moved from android.provider.Settings.System to android.provider.Settings.Global, value is unchanged.
    06-01 18:21:25.862: D/AndroidRuntime(829): Shutting down VM
    06-01 18:21:25.862: W/dalvikvm(829): threadid=1: thread exiting with uncaught exception (group=0xb1a56ba8)
    06-01 18:21:25.952: E/AndroidRuntime(829): FATAL EXCEPTION: main
    06-01 18:21:25.952: E/AndroidRuntime(829): Process: com.example.airplanemodeonoff, PID: 829
    06-01 18:21:25.952: E/AndroidRuntime(829): java.lang.IllegalStateException: Could not execute method of the activity
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at android.view.View$1.onClick(View.java:3823)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at android.view.View.performClick(View.java:4438)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at android.view.View$PerformClick.run(View.java:18422)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at android.os.Handler.handleCallback(Handler.java:733)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at android.os.Handler.dispatchMessage(Handler.java:95)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at android.os.Looper.loop(Looper.java:136)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at android.app.ActivityThread.main(ActivityThread.java:5017)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at java.lang.reflect.Method.invokeNative(Native Method)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at java.lang.reflect.Method.invoke(Method.java:515)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at dalvik.system.NativeStart.main(Native Method)
    06-01 18:21:25.952: E/AndroidRuntime(829): Caused by: java.lang.reflect.InvocationTargetException
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at java.lang.reflect.Method.invokeNative(Native Method)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at java.lang.reflect.Method.invoke(Method.java:515)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at android.view.View$1.onClick(View.java:3818)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	... 11 more
    06-01 18:21:25.952: E/AndroidRuntime(829): Caused by: java.lang.SecurityException: Permission Denial: not allowed to send broadcast android.intent.action.AIRPLANE_MODE from pid=829, uid=10055
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at android.os.Parcel.readException(Parcel.java:1465)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at android.os.Parcel.readException(Parcel.java:1419)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at android.app.ActivityManagerProxy.broadcastIntent(ActivityManagerNative.java:2373)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at android.app.ContextImpl.sendBroadcast(ContextImpl.java:1127)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at android.content.ContextWrapper.sendBroadcast(ContextWrapper.java:365)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at com.example.airplanemodeonoff.MainActivity.modifyAirplanemode(MainActivity.java:49)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	at com.example.airplanemodeonoff.MainActivity.airPlanemodeON(MainActivity.java:26)
    06-01 18:21:25.952: E/AndroidRuntime(829): 	... 14 more
    06-01 18:26:16.992: I/Process(829): Sending signal. PID: 829 SIG: 9
    Pour reproduire le cas les sources sont dans la page de l'exemple.

  4. #4
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Permission Denial: not allowed to send broadcast android.intent.action.AIRPLANE_MODE
    Cette ligne indique qu'il te manque une permission. A priori, ce serait celle-ci : android.permission.WRITE_SETTINGS.
    Au vu de la permission par contre, je me demande si ce n'est pas une système... ce qui rendrait ce que tu désirs faire assez compliqué (nécessité d'avoir les accords constructeurs, ce genre de truc).
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  5. #5
    Candidat au Club
    Inscrit en
    Mars 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 3
    Par défaut
    Bonjour

    Il y a bien la ligne suivante dans le fichierAndroidManifest.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
    En approfondissant les recherches j'ai trouvé ceci : https://projects.dm.id.lv/Jelly_Bean...ne_Mode_Helper
    A partir de la version 4.3, il semble que le changement du mode avion par application ne soit plus possible sauf en ROOT.
    Ce qui semble valider mes tests avec les 2 téléphones à ma disposition (4.4.2 = Ko ; 2.3.5 = Ok).
    Et je n'ai pas trouvé d'application sur le Googleplay qui fonctionne pour changer le mode avion sur 4.4.2.

  6. #6
    Membre Expert
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Par défaut
    Oui. il y a déjà eu une discussion similaire sur ce forum. De mémoire, depuis une certaine version d'Android, seules les applications dites "systèmes" (pas la tienne donc ) ont le droit d'agir sur les settings du périphérique (ex: Airplane mode on/off) sans le consentement de l'utilisateur.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

Discussions similaires

  1. Plantage Excel avec le pilotage depuis C++ Builder
    Par Jidewe dans le forum C++Builder
    Réponses: 24
    Dernier message: 24/01/2007, 10h59
  2. Plantage Access avec trop d'enregistrements
    Par Sethouille dans le forum Access
    Réponses: 5
    Dernier message: 08/09/2006, 11h40
  3. plantage macro avec requete type insert
    Par zephyr59 dans le forum Access
    Réponses: 4
    Dernier message: 06/04/2006, 00h34
  4. Plantage application avec défaillance du module Kernel32
    Par cosminutza dans le forum Langage
    Réponses: 3
    Dernier message: 28/11/2005, 16h15
  5. Plantage Mysql avec LEFT JOIN
    Par verticka dans le forum Requêtes
    Réponses: 2
    Dernier message: 01/09/2005, 11h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo