#Android : Utiliser la torche
Publié : dim. 13/mai/2018 13:10
[SB 2.20]
Avec SpiderBasic vous pouvez créer vos propres applications Android dépourvus de publicité.
Si vous le souhaitez, vos applications pourront accéder aux hardware de votre terminal grâce à l'utilisation des plugins Cordova.
C'est ce que nous allons aborder avec cet exemple.
■ Objectif : Allumer éteindre la torche.
Pour cela nous allons utiliser un plugin Cordova : cordova-plugin-flashlight
■ Documentation : https://www.npmjs.com/package/cordova-plugin-flashlight
L'importation du plugin est simpleOn utilisera un peu de JavaScript pour accéder à ce plugin. Par exemple pour allumer la torche et l’éteindre
■ Principe de l'application.
- Initialiser le plugin qui recevra le callback de succes et le callback d'échec.
- Afficher la fenêtre de l'application.
- Un déclencheur qui permet de savoir si un utilisateur a pressé le bouton On/Off.
- Allumer ou éteindre la torche. Ce code ne teste pas si la torche est déja allumé ou pas.
■ Paramétrage de l'application : Menu compiler -> Create App :: Android
- App Name : Flash Light
- Version : 1.0.0
- Package ID : com.yournickname.flashlight Exemple com.falsam.flashlight
- Orientation : Portrait
- Fullscreen : Cochée
- Output filename : flashlight.apk
- Automaticaly upload on USB .... : Cochée
- Enable debugger : Cochée
Votre terminal Android doit être configurer pour recevoir des apk d'origines étrangères.
Une aide sur ce sujet http://www.purebasic.fr/french/viewtopi ... 06#p187606
Vous devez avoir une connexion internet active.
Avec SpiderBasic vous pouvez créer vos propres applications Android dépourvus de publicité.
Si vous le souhaitez, vos applications pourront accéder aux hardware de votre terminal grâce à l'utilisation des plugins Cordova.
C'est ce que nous allons aborder avec cet exemple.
■ Objectif : Allumer éteindre la torche.
Pour cela nous allons utiliser un plugin Cordova : cordova-plugin-flashlight
■ Documentation : https://www.npmjs.com/package/cordova-plugin-flashlight
L'importation du plugin est simple
Code : Tout sélectionner
Import "cordova plugin add cordova-plugin-flashlight"
EndImport
Code : Tout sélectionner
window.plugins.flashlight.switchOn()
Code : Tout sélectionner
window.plugins.flashlight.switchOff()
■ Principe de l'application.
- Initialiser le plugin qui recevra le callback de succes et le callback d'échec.
- Afficher la fenêtre de l'application.
- Un déclencheur qui permet de savoir si un utilisateur a pressé le bouton On/Off.
- Allumer ou éteindre la torche.
Code : Tout sélectionner
Enumeration
#mf
#mfSwitch
EndEnumeration
Declare PluginInit(onSuccess, onError)
Declare Start()
Declare OnClick()
Declare OnError()
;No debug
CloseDebugOutput()
;Import Cordova Plugin
Import "cordova plugin add cordova-plugin-flashlight"
EndImport
;Init plugin
PluginInit(@Start(), @OnError())
Procedure PluginInit(onSuccess, onError)
!window.plugins.flashlight.available(function(isAvailable) {
! if (isAvailable) {
! v_onsuccess();
! } else {
! v_onerror();
! }
!})
EndProcedure
Procedure Start()
Protected Font = LoadFont(-1, "Arial", 20)
OpenWindow(#mf, 0, 0, 0, 0, "Flash Light", #PB_Window_Background)
SetWindowColor(#mf, RGB(105, 105, 105))
ButtonGadget(#mfSwitch, 20, 50, WindowWidth(0)-40, 200, "Light On")
SetGadgetFont(#mfSwitch, FontID(Font))
;Trigger
BindGadgetEvent(#mfSwitch, @OnClick())
EndProcedure
Procedure OnClick()
Static Status
If Status
Status = #False
SetGadgetText(#mfSwitch, "Light On")
! window.plugins.flashlight.switchOff()
Else
Status = #True
SetGadgetText(#mfSwitch, "Light Off")
! window.plugins.flashlight.switchOn()
EndIf
EndProcedure
Procedure OnError()
!alert("Flashlight not available on this device")
EndProcedure
■ Paramétrage de l'application : Menu compiler -> Create App :: Android
- App Name : Flash Light
- Version : 1.0.0
- Package ID : com.yournickname.flashlight Exemple com.falsam.flashlight
- Orientation : Portrait
- Fullscreen : Cochée
- Output filename : flashlight.apk
- Automaticaly upload on USB .... : Cochée
- Enable debugger : Cochée
Votre terminal Android doit être configurer pour recevoir des apk d'origines étrangères.
Une aide sur ce sujet http://www.purebasic.fr/french/viewtopi ... 06#p187606
Vous devez avoir une connexion internet active.