PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV Mobile 2024 → Fonctions GPS sur matériels ANDROID et plantage
Fonctions GPS sur matériels ANDROID et plantage
Iniciado por François SCHAAL, 03,ago. 2017 08:46 - 35 respuestas
Miembro registrado
1.603 mensajes
Popularité : +64 (70 votes)
Publicado el 03,agosto 2017 - 08:46
Bonjour,

J'ai déployé une application pour beta développeurs via la console de Google.
Cette application utilise les fonctions GPS et possède donc l'autorisation android.permission.ACCESS_FINE_LOCATION

J'ai testé cette application sur trois matériels pour lesquels le GPS est partout activé:

un smartphone Numéro de version d'Android=5.1 (Lollipop) et Api Level Android=22 :fonctionne parfaitement

une tablette Numéro de version d'Android=6.0 (M) Api et Level Android=23 : plantage

une tablette Numéro de version d'Android=7.0 (N) Api et Level Android=24 : plantage

message des plantages Android 7.0
"===== Erreur =====
Date et heure=03/08/2017 08:13:24
Message=Erreur interne.
Message système="gps" location provider requires ACCESS_FINE_LOCATION permission."

message des plantages Android 6.0
"===== Erreur =====
Date et heure=03/08/2017 08:26:34
Message=Erreur interne.
Message système="gps" location provider requires ACCESS_FINE_LOCATION permission."

Est-ce que les fonctions GPS fonctionnent bien en version 6 et 7 d'Android ?

merci par avance

--
Cordialement
François

http://intra.fr http://intrasoftware.fr
Miembro registrado
151 mensajes
Popularité : +7 (7 votes)
Publicado el 03,agosto 2017 - 09:02
Bonjour,

notez qu'à partir de Android 6 vous devez explicitement demander les permissions à l'utilisateur (ouverture d'une fenêtre avant d'utiliser la permission), les fonctions WinDev s'occupent de ça mais visiblement certaines ne le font pas correctement. Vous devez donc ouvrir la fenêtre de demande d'autorisation à la main, avec du code Java.

Pour tester une permission par exemple :

ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION)


Pour ouvrir manuellement la fenêtre de demande de permission à l'utilisateur :

requestPermissions(new String[]{Manifest.permission.ACCESS_FINE_LOCATION},MY_PERMISSIONS_REQUEST_ACCESS_FINE_LOCATION);


Je vous laisse voir sur le site Android Developpers pour plus d'informations.
Miembro registrado
1.603 mensajes
Popularité : +64 (70 votes)
Publicado el 03,agosto 2017 - 09:51
Bonjour Gaël,

Je viens de créer une appli minimaliste avec les fonctions GPS de base de Wm : GPSEtat() GPSEtat(_ChangementEtatGPS) GPSSuitDéplacement(_RécupèrePosition, 1000) et PROCEDURE _RécupèrePosition(MaPosition) : idem plantage en version 6 et 7 et fonctionnement correct en version 5.1 !

Je vais le signaler au support technique car j'ai acquis WM il y a 4 semaines.

Dans ce que tu indiques, où faut il saisir le test de ta permission et la demande d'autorisation ?
Merci cela me semble bien complexe et devrait être géré par WM !

--
Cordialement
François

http://intra.fr http://intrasoftware.fr
Miembro registrado
1.603 mensajes
Popularité : +64 (70 votes)
Publicado el 03,agosto 2017 - 10:05
je viens d'envoyer mon projet compacté et la liste des erreurs d'android au support technique. Référence ST/E619895

--
Cordialement
François

http://intra.fr http://intrasoftware.fr
Miembro registrado
151 mensajes
Popularité : +7 (7 votes)
Publicado el 03,agosto 2017 - 10:08
Bonjour François,

Normalement c'est géré par WinDev, mais j'ai pu constater que ce n'était pas toujours le cas.

Ce que je fais pour contourner le problème et m'assurer que ça fonctionne toujours: en Java je teste d'abord si la permission a été accordée à l'aide de "checkSelfPermission", puis si ce n'est pas le cas je la demande avec "requestPermissions". Et ce avant l'utilisation des fonctions GPS de WinDev.
Miembro registrado
1.603 mensajes
Popularité : +64 (70 votes)
Publicado el 03,agosto 2017 - 10:36
Rebonjour Gaêl,

Par exemple lors de l'installation d'une appli sur Android 7, j'ai un message "Autoriser l'application xxx à effectuer et gérer les appels téléphoniques" avec le choix refuser ou autoriser.
Rien pour les fonctions GPS.
Ce qui est bizarre dans mon cas c'est que mon application n'effectue et ne gère aucun appel téléphonique.
je me demande s'il n'y aurait pas une inversion entre appels téléphoniques et fonctions GPS...

--
Cordialement
François

http://intra.fr http://intrasoftware.fr
Miembro registrado
151 mensajes
Popularité : +7 (7 votes)
Publicado el 03,agosto 2017 - 11:10
Rebonjour François :)

Les permissions dès Android 6 ne se font plus à l'installation du programme, mais au moment où le programme a besoin de ladite fonctionnalité.

Par exemple, au moment où tu veux utiliser "GPSEtat" pour la première fois, WinDev devrait ouvrir la fenêtre à l'utilisateur pour lui demander la permission d'utiliser ACCESS_FINE_LOCATION. J'ai eu aussi des cas où l'écriture dans des fichiers textes ne fonctionnaient pas car WRITE_EXTERNAL_STORAGE n'avait pas été accordé, alors qu'il était dans le manifeste.

Pour ma part j'ai l'impression que WinDev ne gère pas trop bien ce nouveau concept des permissions à partir d'Android 6, du coup mieux vaut gérer ça à la main en attendant un patch.

Pour ton cas de la permission du téléphone, c'est effectivement étrange. J'espère que le support va répondre rapidement.
Miembro registrado
1.603 mensajes
Popularité : +64 (70 votes)
Publicado el 04,agosto 2017 - 11:20
Bonjour Gaël,

j'apprends un peu tous les jours

lorsque tu charge une appli Android depuis Google Play, la liste des autorisations s'affiche.
Par exemple pour une appli : Achats via l'appli, Identité, Position, Photos/multimédia/fichier, Identifiant de l'appareil et infos appel.

Mon message sur Android 7 "Autoriser l'application xxx à effectuer et gérer les appels téléphoniques" est certainement lié au fait que j'utilise le GUID avec les fonctions WM.
Dans l'idéal pour tester toutes les autorisations sur Android 6 et 7, il faudrait concevoir une appli qui utilise toutes les fonctions de WM et donc toutes les autorisations... pour l'instant j'attends le retour du ST.

--
Cordialement
François

http://intra.fr http://intrasoftware.fr
Miembro registrado
1.603 mensajes
Popularité : +64 (70 votes)
Publicado el 09,agosto 2017 - 08:14
Bonjour

Ce sera étudié à partir de fin Août (L'incident a été enregistré avec la référence 104 701).
je vais essayer le code java proposé par Gaël.

--
Cordialement
François

http://intra.fr http://intrasoftware.fr
Miembro registrado
1.603 mensajes
Popularité : +64 (70 votes)
Publicado el 16,agosto 2017 - 08:05
Une énigme : l'application pour Android "WM Sports - Running Vélo GPS" (PC SOFT) demande bien l'autorisation pour la position alors qu'une appli dont l'APK est généré par WM22 ne le demande pas (encore) et plante donc sur Android 6 et 7 (bientôt 8):






--
Cordialement
François

http://intra.fr http://intrasoftware.fr
Publicado el 17,agosto 2017 - 09:49
Bonjour,

j'ai exactement le même problème que toi, je vais envoyer mon projet au ST.
Miembro registrado
1.603 mensajes
Popularité : +64 (70 votes)
Publicado el 17,agosto 2017 - 10:47
Bonjour Nico,

Ce sera étudié par le ST qu'à partir de fin Août (L'incident a été enregistré avec la référence 104 701).
j'ai cherché en java mais c'est grosse galère...

--
Cordialement
François

http://intra.fr http://intrasoftware.fr
Publicado el 17,agosto 2017 - 11:01
Je me dis que si plusieurs personnes remontent le problème ça ira plus vite .... ou pas :-)
Miembro registrado
1.603 mensajes
Popularité : +64 (70 votes)
Publicado el 17,agosto 2017 - 11:55
Alors n'hésites pas à remonter le problème !

--
Cordialement
François

http://intra.fr http://intrasoftware.fr
Miembro registrado
151 mensajes
Popularité : +7 (7 votes)
Publicado el 18,agosto 2017 - 00:51
En attendant, je partage avec vous le code de mes deux procédure Java permettant de tester une permission (en l'occurence pour l'audio, modifiez comme vous voulez) ainsi que celle qui ouvre la fenêtre de demande à l'utilisateur.

import android.support.v4.content.ContextCompat;
import android.Manifest;
import android.content.pm.PackageManager;
import android.os.Build;

public static boolean checkPermissionsAudio()
{
// Seulement depuis la version 6
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {

// Assume thisActivity is the current activity
int permissionCheck = ContextCompat.checkSelfPermission(getContexteApplication(), Manifest.permission.RECORD_AUDIO);

// Pas de permissions
if (permissionCheck == PackageManager.PERMISSION_GRANTED) {

return true;

} else {

return false;

}

} else {

return true;

}


}


import android.support.v4.app.ActivityCompat;
import android.Manifest;

public static void setPermissionsAudio()
{

// Pas de permissions
if (!checkPermissionsAudio()) {

// On demande
ActivityCompat.requestPermissions(getActiviteEnCours(), new String[]{Manifest.permission.RECORD_AUDIO}, 0);

}

}
Miembro registrado
1.603 mensajes
Popularité : +64 (70 votes)
Publicado el 18,agosto 2017 - 10:38
Bonjour Gaël et merci d'avoir partagé ton expertise avec les membres (parfois désemparés) du forum :) !

j'ai testé ton code (adapté) sur Android 6 et 7 avec des versions d'APK téléchargées depuis le Google Play Store.

La permission ACCESS_FINE_LOCATION est chaque fois demandée et le GPS fonctionne alors à merveille.

Encore merci et bravo car il aurait fallu attendre au minimum 3 à 4 semaines à mon avis.

Si quelqu'un souhaite le code adapté en code java et en W langage, me l'indiquer sur le forum pour mise à disposition.

--
Cordialement
François

http://intra.fr http://intrasoftware.fr
Miembro registrado
151 mensajes
Popularité : +7 (7 votes)
Publicado el 18,agosto 2017 - 10:58
Ravi d'avoir pu aider. :merci:

En effet j'ai balancé ce code hier soir sans trop l'expliquer, mais dans le cas du GPS il suffit de remplacer RECORD_AUDIO par ACCESS_FINE_LOCATION, et puis appeler setPermissionsAudio (qu'il faudrait renommer en "setPermissionsGPS" d'ailleurs) juste avant l'utilisation de la fonction GPS WinDev.

Ceci dit, normalement la fenêtre de demande ne devrait s'ouvrir qu'une seule fois, Android mémorise ensuite le choix de l'utilisateur.
Miembro registrado
91 mensajes
Popularité : +3 (3 votes)
Publicado el 18,agosto 2017 - 12:05
Bonjour François,

je suis très intéressé par ton code.

Merci

Stéphane
Miembro registrado
1.603 mensajes
Popularité : +64 (70 votes)
Publicado el 18,agosto 2017 - 12:16
Ce bout de code est dû à Gaël:

1. créer une procédure java par exemple checkPermissionGPS et copier:

import android.support.v4.content.ContextCompat;
import android.Manifest;
import android.content.pm.PackageManager;
import android.os.Build;

public static boolean checkPermissionGPS()
{
// Seulement depuis la version 6
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
// Assume thisActivity is the current activity
int permissionCheck = ContextCompat.checkSelfPermission(getContexteApplication(), Manifest.permission.ACCESS_FINE_LOCATION);
// Pas de permissions
if (permissionCheck == PackageManager.PERMISSION_GRANTED) {
return true;
} else {
return false;
}
} else {
return true;
}
}

2. créer une procédure java par exemple setPermissionsGPS et copier

import android.support.v4.app.ActivityCompat;
import android.Manifest;

public static void setPermissionsGPS()
{

// Pas de permissions
if (!checkPermissionGPS()) {

// On demande
ActivityCompat.requestPermissions(getActiviteEnCours(), new String[]{Manifest.permission.ACCESS_FINE_LOCATION}, 0);

}

}//

3. code d'ini du projet en W-langage (peut être amélioré) :

SI EnModeAndroid() = Vrai ALORS
//l'autorisation GPS :
AUTOGPS est un booléen = checkPermissionGPS()
//toastaffiche("1er RELEVE AUTORISATION GPS : " + AUTOGPS, toastLong,cvMilieu,chCentre) //faux = 0 renvoie 1
//mais après avoir déjà lancé l'appli !

SI AUTOGPS = Faux ALORS setPermissionsGPS()
AUTOGPS = checkPermissionGPS() //l'utilisateur a validé ou non l'autorisation GPS ?
//ToastAffiche("2ème RELEVE AUTORISATION GPS : " + AUTOGPS, toastLong,cvMilieu,chCentre)

SI AUTOGPS = Faux ALORS FinProgramme() //si le GPS est indispensable au projet !!!!

FIN

--
Cordialement
François

http://intra.fr http://intrasoftware.fr
Miembro registrado
151 mensajes
Popularité : +7 (7 votes)
Publicado el 18,agosto 2017 - 12:52
Note que la méthode JAVA "setPermissionsGPS" contient elle-même la méthode "checkPermissionGPS".

Donc juste avant d'utiliser une fonction WinDev qui utilise le GPS (GPSEtat, etc.), un simple setPermissionsGPS() suffit.

Ensuite (et seulement ensuite) par mesure de sécurité, c'est vrai qu'un "checkPermissionGPS()" permettrait de savoir si l'utilisateur a accepté ou refusé.
Miembro registrado
16 mensajes
Popularité : +1 (1 vote)
Publicado el 19,agosto 2017 - 13:15
Bonjour,


Les messages précédents parlent de l'activation de la permission GPS.
Une question qui va avec (selon moi).

Comment activer (automatiquement) la localisation (lorsque la permission est ou a été activée)?

Des utilisateurs d'un de mes programmes souhaitent ne pas être tracés en général et déactivent la localisation, mais doivent l'activer pour utiliser ce programme.
Régulièrement ils l'oublient.
Le programme signale une non réception du GPS.
Ils sont obligés d'aller dans les paramètres activer la localisation. C'est simple, mais certains demandent que cette opération soit automatisée.
Ma réponse a été, je pense que pour des questions de sécurité, ce n'est pas possible.
Leurs remarques, le programme Maps le fait bien.
Effectivement, lorsque la localisation est déactivée, au démarrage, Maps ouvre une fenêtre qui propose d'activer la localisation (Annuler / Ok).

Donc, comment activer (automatiquement) la localisation ?
et comment remettre la localisation dans son état initiale à la fin du programme.

Merci
Mensaje modificado, 19,agosto 2017 - 13:16
Miembro registrado
98 mensajes
Publicado el 19,agosto 2017 - 16:45
bonjour,
il faut aussi vérifier dans fonctionnalité :
android.harware.location et android.harware.location.gps

sinon chez moi ça fonctionne très bien avec Androïd 6 et antérieur.

A+

--
Christian SY
Miembro registrado
1.603 mensajes
Popularité : +64 (70 votes)
Publicado el 21,agosto 2017 - 16:40
Bonjour,

Les galères se poursuivent : SysNumSérie() sous Android 6 renvoie une chaîne vide !

bref je me demande ce qui fonctionne vraiment sous Android 6 et 7 et bientôt 8 ...

Je vais créer un sujet séparé...
Certainement de nouveau une permission jugée dangereuse sans que celle-ci soit demandée à l'utilisateur...

permissions jugées dangereuses: https://developer.android.com/guide/topics/permissions/requesting.html

je me pose aussi la question s'il est possible d'autoriser une permission par groupe au lieu d'autorisations individuelles:
https://developer.android.com/reference/android/Manifest.permission_group.html

--
Cordialement
François

http://intra.fr http://intrasoftware.fr
Miembro registrado
1.603 mensajes
Popularité : +64 (70 votes)
Publicado el 28,agosto 2017 - 14:05
Bonjour à tous,

Encore une découverte (mais Gaël l'avait signalé) : quand on écrit dans un fichier txt ou de paramètres (et certainement d'autres comme HFSQL local), il faut la permission android.permission.WRITE_EXTERNAL_STORAGE.

Sauf que sur Android 7, cette permission n'est pas demandée lors du premier lancement de l'appli générée par WM22.

Si je consulte dans les paramètres, applications puis si je clique sur la ligne Autorisations, la permission Position est bien activée avec le code JAVA indiqué plus haut par contre l'autorisation Stockage n'est pas activée...

Et la permission du groupe STORAGE est considérée comme dangereuse : https://developer.android.com/guide/topics/permissions/requesting.html


Je vais faire un essai dans un fichier de paramètres pour tester si l'écriture puis la lecture de paramètres sont possibles SANS la permission explicite du groupe STORAGE.

--
Cordialement
François

http://intra.fr http://intrasoftware.fr
Miembro registrado
1.603 mensajes
Popularité : +64 (70 votes)
Publicado el 28,agosto 2017 - 14:17
J'ai fait un test avec un fichier de paramètres défini par:
InitParamètre(paramXML, "ParamSYS.xml")

Il est possible d'écrire (par SauveParamètre...) et de lire des paramètres (par ChargeParamètre) alors que la permission Stockage n'est pas activée sous Android 7. Cela se consulte dans paramètres, applications, puis autorisations.

Maintenant je ne sais pas si c'est possible avec tous les types de fichiers...

--
Cordialement
François

http://intra.fr http://intrasoftware.fr
Miembro registrado
151 mensajes
Popularité : +7 (7 votes)
Publicado el 28,agosto 2017 - 14:59
Merci pour tes tests François !

Dans tous les cas, en développant avec WinDev Mobile on ne devrait même pas avoir à se poser ce genre de questions.
Publicado el 30,agosto 2017 - 09:38
Bonjour,

le ST a envoyé un correctif :

http://stg.webdev.info/Telechargement_Support_WEB/FR/telec_ST.awp…

Bonne journée
Miembro registrado
41 mensajes
Publicado el 20,septiembre 2017 - 10:50
Bonjour Nico comment je peux utiliser ce correctif STP Merci?
Miembro registrado
217 mensajes
Popularité : +12 (12 votes)
Publicado el 02,octubre 2017 - 15:44
Bonjour à tous.
Jai constaté que le correctif concerne windev mobile en 22 d'où ma question. Est ce que le probleme de plantage android 6 et 7 due aux autorisations existe uniqyement en version 22 de windev mobile.
Jutilise les fonctions gps en version 20. Lappli est deployé essentiellement sur des smarphones android v 4.x et 5.x.
Le problème c'est qu'il devient difficile de trouver sur le marché des tel avec danciennes version android!
Miembro registrado
1.603 mensajes
Popularité : +64 (70 votes)
Publicado el 03,octubre 2017 - 08:03
Bonjour

je n'ai pas la réponse. Le mieux est d'ouvrir votre appli sur un matériel sous Android 6 et 7.

j'ai réglé ce problème avec le code Java indiqué plus haut.
Autre intérêt : l'utilisateur peut désactiver une permission dans les paramètres. Je teste les permissions en code d'ini (en Java) avec des codes adaptés (par exemple pour redemander une permission ou autrement pour désactiver du code dans l'appli) pour éviter un beau message d'erreur Java.



Monsieur RÉDA a écrit :
Bonjour à tous.
Jai constaté que le correctif concerne windev mobile en 22 d'où ma question. Est ce que le probleme de plantage android 6 et 7 due aux autorisations existe uniqyement en version 22 de windev mobile.
Jutilise les fonctions gps en version 20. Lappli est deployé essentiellement sur des smarphones android v 4.x et 5.x.
Le problème c'est qu'il devient difficile de trouver sur le marché des tel avec danciennes version android!


--
Cordialement
François

http://intra.fr http://intrasoftware.fr
Publicado el 12,octubre 2017 - 18:12
Bjr,

"ÿÿÿÿÿÿÿÿÿÿ" a utilisé son clavier pour écrire :
Le problème c'est qu'il devient difficile de trouver sur le marché des tel
avec danciennes version android!


pour 64¤ chez CDiscount, tu en as des tout neuf en 4" et ANdrid 4.4.x
...

a plus

--
-------------------------------------------------------------
www.ctc-soft.com
Gestion biblo-documentaire (free-share)
Comptabilité shareware
Logiciels de Gestion de saisie terrain
Spécialisé Tournées de boulangers
-------------------------------------------------------------
Miembro registrado
217 mensajes
Popularité : +12 (12 votes)
Publicado el 20,diciembre 2017 - 11:32
Merci à vous pour ce retour d'expérience.

dans mon projet, je fais appel en permance aux fonction gps (gpssuitdeplacement, gpsrécupereposition,...etc)
Je n'ai pas encore intégré les procédures java (permission) au niveau de mon application.
Mon client utilisait android 5.x sans problème jusqu'à il y a quelques jours où il a décider de changer d'appareil pour un android 6.0 ... la galère !!!
Je m'attendais à être tarabusté par ces appel à cause du bug sur android 6, mais surprise tout fonctionne normalement !
Aucun plantage, l'appareil est bien géolocalisé sans aucun problème.
Afin de pouvoir "répertorier" en quelque sorte, les causes du plantage, je donne ici toutes les informations relatives à mon développement, dans le but d'identifier quelle est la raison exacte du plantage :
Android : 6.0 5.x 4.x aucune plantage !
Windev mobile : 20
SDK android rev. 25
Miembro registrado
3.329 mensajes
Popularité : +93 (137 votes)
Publicado el 10,julio 2019 - 00:21
up
Miembro registrado
4 mensajes
Publicado el 21,enero 2022 - 21:13
Echec de la création de l'application Android <D:\Mes Projets Mobile\SERVEUR\Exe\Application Android\Soft Gestion.apk>.


Ligne de commande : "C:\Program Files\Java\jdk-10.0.2\bin\java.exe" -Duser.dir="D:\Mes Projets Mobile\SERVEUR\Android\gen" "-Dorg.gradle.appname=D:\Mes Projets Mobile\SERVEUR\Android\gen" -classpath "C:\Users\TIpou\AppData\Roaming\PC SOFT\25.0\Android\Gradle\lib\gradle-launcher-5.4.1.jar" org.gradle.launcher.GradleMain assembleRelease -b "D:\Mes Projets Mobile\SERVEUR\Android\gen\build.gradle"


Erreur retournée :
:compileReleaseJavaWithJavac
D:\Mes Projets Mobile\SERVEUR\Android\gen\src\com\Soft_Gestion\wdgen\GWDCPCOL_JAVA.java:19: error: cannot find symbol
import android.support.v4.app.ActivityCompat;
^
symbol: class ActivityCompat
location: package android.support.v4.app
D:\Mes Projets Mobile\SERVEUR\Android\gen\src\com\Soft_Gestion\wdgen\GWDCPCOL_JAVA.java:23: error: package android.support.v4.content does not exist
import android.support.v4.content.ContextCompat;
^
D:\Mes Projets Mobile\SERVEUR\Android\gen\src\com\Soft_Gestion\wdgen\GWDCPCOL_JAVA.java:94: error: cannot find symbol
int permissionCheck = ContextCompat.checkSelfPermission(getContexteApplication(), Manifest.permission.WRITE_EXTERNAL_STORAGE);
^
symbol: variable ContextCompat
location: class GWDCPCOL_JAVA
D:\Mes Projets Mobile\SERVEUR\Android\gen\src\com\Soft_Gestion\wdgen\GWDCPCOL_JAVA.java:111: error: cannot find symbol
ActivityCompat.requestPermissions(getActiviteEnCours(), new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 0);
^
symbol: variable ActivityCompat
location: class GWDCPCOL_JAVA
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
4 errors

> Task :compileReleaseJavaWithJavac FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':compileReleaseJavaWithJavac'.
Compilation failed; see the compiler error output for details.


* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 25s
10 actionable tasks: 6 executed, 4 up-to-date

SVP COMMENT RESOLU CE PROBLEME
Miembro registrado
3.329 mensajes
Popularité : +93 (137 votes)
Publicado el 22,enero 2022 - 04:08
2 solutions :
1
Retrouver le téléchargement support v4 Android (SDK)
http://how-to-channel.blogspot.com/2017/11/android-support-library-v4-for-windev.html
L'installer
Petite vidéo
https://m.youtube.com/watch…

OU
2
Modifier les imports et le code comme indiqué sur cette page
https://stackoverflow.com/questions/57868282/cannot-resolve-symbol-activitycompat-and-content
Miembro registrado
4 mensajes
Publicado el 23,enero 2022 - 20:21
Merci Popoy