Cordova développement d'un plugin - ajout de l'aar
Je suis nouveau sur le développement d'un plugin cordova choses.
Je veux écrire un plugin qui est en mesure d'ouvrir un nouveau android activty et montrant un peu de publicité.
J'ai donc suivi un tutoriel simple ici. Qui fonctionne très bien et comme prévu.
Étape suivante consiste à inclure cette Android Studio Gradle projet de mon plugin.
Mon premier essai: Ajout de la gradle projet dans un sous-dossier de mon plugin cordova et en ajoutant la ligne suivante à la plugin.xml fichier:
<framework src="libs/Broper/build.gradle" custom="true" type="gradleReference" />
aussi j'ai essayé:
<framework src="libs/Broper/app/build.gradle" custom="true" type="gradleReference" />
La graddle fichiers sont reconnus par cordova. Mais quelque chose ne fonctionne pas. Donc je ne peux pas importer les classes de android studio de projet pour mon plugin java fichiers.
Alors une meilleure solution (je le croyais) consiste à ajouter un AAR à la place. Mais là je n'ai même pas la moindre idée de quoi faire pour ajouter que l'AAR dans mon plugin cordova.
Donc, la question est: Comment puis-je ajouter un android atudio aroject (ou bibliothèque) pour mon plugin cordova la bonne façon?
Vous devez vous connecter pour publier un commentaire.
Voici ce que j'ai fait pour utiliser un gradle de référence avec un plugin Cordova, je pense que cela pourrait vous aider.
Structure globale :
Mis à votre bibliothèque, dire
foo.aar
, dans leyourDirContainingYourAAR
répertoire (le créer si nécessaire)Dans le
plugin.xml
fichier :Dans le gradle fichier
yourFile.gradle
:Dans le dossier racine de votre plugin (même niveau que
plugin.xml
) créer unbuild-extras.gradle
.Si nécessaire, ajouter ou supprimer des
minSdkVersion
ettargetSdkVersion
selon les besoins de votre projet :build-extras.gradle
copié à partir du plugin dossier racine de la plate-forme android dossier s'il n'est pas explicitement mentionnés dans laplugin.xml
? Ne Cordova implicitement chercher ce fichier et de le déployerplatforms/android
? Et si oui, où faut-il copier?Il y a une légère modification à Niko de réponse
Quand gradle pistes de la compilation à l'aide de Niko de réponse, il recherche les libs dans
app/libs
qui n'est pas présente dans le projet (il le fait dans la norme Android Studio de projet, mais de Cordoue Android structure du projet le dossier libs est différent). Cependant le plugin copies de l'aar bibliothèque deapp/src/main/libs
qui peut nous faire penser que c'est la copie de l'aar pourapp/libs
<resource-file src="yourDirContainingYourAAR/foo.aar" target="libs/foo.aar" />
D'où le gradle fichier doit être
Cela vous donnera une compilation réussie de l'application
Cheers!!
Après cordova la création du projet, l'ajout de la plateforme, l'ajout de plugin est fait.
Permet de dire que l'aar fichiers sont copiés dans le dossier libs. ( à supposer nom de fichier est cartes.aar )
puis dans l'app construire.gradle spécifier les informations suivantes et cliquez sur sync projet avec Gradle fichiers.
Ça marche pour moi!! mais l'un des inconvénients de cette solution est .. vous devez ouvrir le projet de plate-forme de dossier sur Android Studio et ajouter les lignes ci-dessus de votre construction.gradle