PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 23 → Permissions non démandé
Permissions non démandé
Débuté par Tom, 29 juin 2018 16:18 - 4 réponses
Posté le 29 juin 2018 - 16:18
Salut,

Nous avons passé notre application en Windev Mobile 23, mais nous éprouvons des problème avec les permissions.Elle ne sont tous simplement pas demandé et dont lorsque vient le temps d'écrire un fichier sa plante puisque nous n'avons pas le permissions.

J'ai essayé l'exemple suivant: https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windevmobile/28463-fonctions-gps-sur-materiels-android-plantage-28647/read.awp…, mais le problème est que l'autorisation est demandé, mais je ne sais pas ce que l'usager à sélectionné.

Lorsque je rappel ma fonction CheckStoragePermissions() pour savoir si l'usager a accepter ou non, le résultat de celle-ci est toujours faux, malgré le fait que j'appel le setStoragePermissions avant cette fonction pour demander l'autorisation.

Voici mon code en exemple

HASStoragesPermissions est un booléen = CheckStoragePermissions()
SI HASStoragesPermissions= Faux ALORS setStoragePermissions()
SI HASStoragesPermissions= Vrai ALORS
IDFichier = fCrée(fileName)
fEcrit(IDFichier,cCityData.DocumentData)
fFerme(IDFichier)
Multitâche(-1)
Sablier(Faux)
LanceAppliAssociée(fileName)
FIN



Fonction java :
import android.support.v4.content.ContextCompat;
import android.Manifest;
import android.content.pm.PackageManager;
import android.os.Build;
public static boolean CheckStoragePermissions()
{
// 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.WRITE_EXTERNAL_STORAGE);

// 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 setStoragePermissions()
{
// Pas de permissions
if (!CheckStoragePermissions()) {
// On demande
ActivityCompat.requestPermissions(getActiviteEnCours(), new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 0);
}




J'ai vue que nous pouvons obtenir le résultat de ce que l'usager à fait lors de la demande, mais je ne sais pas comment l'appeler

Voici un exemple, mais cette fonction n'ai jamais appelé :
public void onRequestPermissionsResult(int requestCode, @NonNull String permissions[],@NonNull int[] grantResults) 
{
switch (requestCode) 
{
case 1: if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) appelProcedureWL_int("SetPermissionsResult",1); else appelProcedureWL_int("SetPermissionsResult",-1);
break;
}
}


Merci !!
Posté le 29 juin 2018 - 22:09
Que se passe t'il lorsque tu active manuellement la permission dans les paramètres de l'application ?
sinon a lire : https://stackoverflow.com/questions/32714787/android-m-permissions-onrequestpermissionsresult-not-being-called
A priori d'autres import sont maintenant a ajouter selon ce code exemple :
https://github.com/googlesamples/android-RuntimePermissions/blob/master/Application/src/main/java/com/example/android/system/runtimepermissions/MainActivity.java
merci de précisé la version et API de l'appareil de test.
il se peut aussi que l'on doivent indique l'activité a écouter pour récupérer son retour dans le manifeste.
je n'ai pas réussit a trouver le nom exact de cette activité.
Posté le 29 juin 2018 - 22:09
Que se passe t'il lorsque tu active manuellement la permission dans les paramètres de l'application ?
sinon a lire : https://stackoverflow.com/questions/32714787/android-m-permissions-onrequestpermissionsresult-not-being-called
A priori d'autres import sont maintenant a ajouter selon ce code exemple :
https://github.com/googlesamples/android-RuntimePermissions/blob/master/Application/src/main/java/com/example/android/system/runtimepermissions/MainActivity.java
merci de précisé la version et API de l'appareil de test.
il se peut aussi que l'on doivent indique l'activité a écouter pour récupérer son retour dans le manifeste.
je n'ai pas réussit a trouver le nom exact de cette activité.
Membre enregistré
153 messages
Posté le 01 juillet 2018 - 12:07
Bonjour,

Tu peux également regarder ce post :
https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windevmobile/27416-autorisation-stockage/read.awp…

--
Bon développement

Pierre Devillers
Posté le 04 juillet 2018 - 08:59
TOM Peut tu nous faire un retour
As tu reussit et comment ?
Merci d'avance