PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 2024 → Relancer l'application WindevMobile2024 dans le code java d'un Listener de SMS ou d'alarme
Relancer l'application WindevMobile2024 dans le code java d'un Listener de SMS ou d'alarme
Débuté par J.P. SILVESTRE, 11 mar. 2024 08:18 - 9 réponses
Membre enregistré
9 messages
Posté le 11 mars 2024 - 08:18
Bonjour,

En Windev mobile 29 (2024) sur Samsung A51 Android 13, la réception des sms (LST 118) en java fonctionne très bien lorsque l'application est ouverte (un appelProcedureWL fonctionne parfaitement).

MAIS lorsque l'application est fermée je n'ai pas trouvé de solution en java pour relancer mon application Windev mobile qui doit traiter les sms bien reçus. En effet l'appli Windev mobile est fermée donc inaccessible directement.
J'ai essayé plusieurs solutions mais toutes bloquent sur le lancement de l'appli Windev Mobile par java.

Comment faire exactement ? Non spécialiste de java, il y a certainement beaucoup de "choses" que j'ignore.

Merci pour votre aide détaillant toutes les opérations à faire dans le manifest et le code java.

--
J.P. Silvestre
Paris
Membre enregistré
3 450 messages
Posté le 11 mars 2024 - 10:00
Salut
Tu exagère quand tu dis que tu n'es pas un spécialiste java .
Ainsi j'aurais bien aimé avoir ton source de sil alarme ou shamdecibel
Car je n'arrive pas personnellement a faire l'équivalent
Mail : dj.normant [at] gmail.com
(je suis toujours en wm25 donc si ton projet est en version supérieure merci de me donner une impression de projet en pdf)

Pour répondre à ta question j'aurais mis en place un service Android qui lancerai l'application a réception du SMS ou de l'alarme
https://www.javatpoint.com/android-service-tutorial
L'équivalent le plus proche en windev mobile est le threadpersistant.
Membre enregistré
9 messages
Posté le 12 mars 2024 - 16:59
Merci pour ta réponse.

La réception des SMS (ou Alarmes) fonctionnent très bien avec les Listener que j'ai mis en place avec du code java.
Je peux enregistrer toutes les informations reçues dans un fichier. Je veux seulement relancer l'application Windev mobile 2024.
Mais sur la dizaine de méthodes que j'ai tenté de mettre en place n'aboutissent pas à relancer mon package.
Juste pour éviter d'appuyer sur l'icône de l'appli ou dans son widget. Avec WM21 tout fonctionnait bien.
Je cherche si quelqu'un a trouvé le moyen de relancer l'application (fermée) à partir d'une procédure java.
J'ai remarqué aussi que dans WM204 LanceAppli sur mon package ne fonctionne pas également.
Je ne pense pas qu'un service puisse relancer l'appli (fermée) par un procédure java déclenchante.
Je peux évidemment me tromper.
Merci d'avoir prêté attention à mon appel.

--
J.P. Silvestre
Paris
Membre enregistré
3 450 messages
Posté le 13 mars 2024 - 17:25
Salut
J'ai réfléchi à ta question
Pourquoi ne passe tu pas par une notification ?
Membre enregistré
25 messages
Posté le 27 mai 2024 - 11:51
Bonjour

j'essaie de mettre en oeuvre la lecture des SMS dans mon appli (publiée sur PlayStore). j'ai voulu intégrer l'exemple de la LST 118 "Android Ecoute Reception SMS". Lorsque je tente de contruire le APK, j'ai un message d'erreur (ci-dessous).

Quelqu'un aurait une idée SVP ?

Merci d'avance

Jean Philippe


//////////////////

Échec de la création de l'application Android <C:\LST\WM\LST118\Android Ecoute Reception SMS\Exe\Android Ecoute Reception SMS.apk>.


Ligne de commande : "C:\Users\User\AppData\Roaming\PC SOFT\29.0\Android\OpenJDK\bin\java.exe" -Duser.dir="C:\LST\WM\LST118\Android Ecoute Reception SMS\Android\gen" "-Dorg.gradle.appname=C:\LST\WM\LST118\Android Ecoute Reception SMS\Android\gen" -classpath "C:\Users\User\AppData\Roaming\PC SOFT\29.0\Android\Gradle\lib\gradle-launcher-7.5.1.jar" org.gradle.launcher.GradleMain assembleRelease -b "C:\LST\WM\LST118\Android Ecoute Reception SMS\Android\gen\build.gradle"


Erreur retournée :
:compileReleaseJavaWithJavac
C:\LST\WM\LST118\Android Ecoute Reception SMS\Android\gen\src\com\masociete\android_ecoute_reception_sms\wdgen\GWDCPCOL_RECEPTION_SMS.java:20: error: cannot find symbol
import android.support.v4.app.ActivityCompat;
^
symbol: class ActivityCompat
location: package android.support.v4.app
C:\LST\WM\LST118\Android Ecoute Reception SMS\Android\gen\src\com\masociete\android_ecoute_reception_sms\wdgen\GWDCPCOL_RECEPTION_SMS.java:21: error: package android.support.v4.content does not exist
import android.support.v4.content.ContextCompat;
^
C:\LST\WM\LST118\Android Ecoute Reception SMS\Android\gen\src\com\masociete\android_ecoute_reception_sms\wdgen\GWDCPCOL_RECEPTION_SMS.java:216: error: cannot find symbol
if (ContextCompat.checkSelfPermission(getActiviteEnCours(), permission.RECEIVE_SMS) != PackageManager.PERMISSION_GRANTED) {
^
symbol: variable ContextCompat
location: class GWDCPCOL_RECEPTION_SMS
C:\LST\WM\LST118\Android Ecoute Reception SMS\Android\gen\src\com\masociete\android_ecoute_reception_sms\wdgen\GWDCPCOL_RECEPTION_SMS.java:219: error: cannot find symbol
ActivityCompat.requestPermissions(getActiviteEnCours(), new String[]{permission.RECEIVE_SMS}, PERMISSIONS_REQUEST_RECEIVE_SMS);
^
symbol: variable ActivityCompat
location: class GWDCPCOL_RECEPTION_SMS
Note: C:\LST\WM\LST118\Android Ecoute Reception SMS\Android\gen\src\com\masociete\android_ecoute_reception_sms\wdgen\GWDCPCOL_RECEPTION_SMS.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: C:\LST\WM\LST118\Android Ecoute Reception SMS\Android\gen\src\com\masociete\android_ecoute_reception_sms\wdgen\GWDFFEN_Accueil.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
4 errors

> Task :compileReleaseJavaWithJavac FAILED

FAILURE: Build completed with 2 failures.

1: Task 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.

==============================================================================

2: Task failed with an exception.
-----------
* What went wrong:
java.lang.StackOverflowError (no error message)

* 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

Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/7.5.1/userguide/command_line_interface.html…

BUILD FAILED in 12s
31 actionable tasks: 8 executed, 23 up-to-date
Membre enregistré
3 450 messages
Posté le 27 mai 2024 - 12:59
Salut Jean Philippe,
Ton erreur indique que ton SDK est incomplet.
Membre enregistré
25 messages
Posté le 27 mai 2024 - 14:47
Merci Popoy pour ton aide.

Comment puis-je mettre à jour / compléter mon SDK ?
j'ai toujours ''laisser la main'' à WinDev Mobile pour cela !

merci encore

JP
Membre enregistré
448 messages
Posté le 10 juillet 2024 - 09:35
Bonjour,
Vous avez trouvé une solution ? C'est lié aux mise à jour de du SDK.
Je soupçonne cette ligne. Mais comment la mettre en place.

@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.launcher.GradleMain %*
Membre enregistré
846 messages
Posté le 10 juillet 2024 - 11:37
Bonjour. Les bibliothèques android.support.v4 ne sont pas compatibles avec les bibliothèques androidx utilisées dans les dernières versions. Essayez de trouver une option compatible.

Rubén
Membre enregistré
448 messages
Posté le 11 juillet 2024 - 08:42
J'ai désinstallé le V35 que j'avais activé.