J'essaie d'utiliser un fichier personnalisé dans mon projet Android. J'ai trouvé des dizaines d'exemples dans StackOverflow et sur le Web. Beaucoup ont échoué à la construction, aucune n'a fonctionné. Le plus clair était at http://kevinpelgrims.com/blog/2014/05/18/reference-a-local-aar-in-your-Android-project/
Cela a été le plus proche de travailler.
Voici ce que j'ai fait
Création réussie d’un AAR très simple (Ref.aar) à partir de Ref.Java
// Ref.Java
package com.ramrod.Ref;
public class Ref {
// Square an integer
public static int
square(int val) {
return (val * val);
}
}
Création d'un projet de test (RefTest)
Build.gradle modifié
// build.gradle (Module: app)
apply plugin: 'com.Android.application'
Android {
compileSdkVersion 27
buildToolsVersion "27.0.3"
defaultConfig {
applicationId "com.ramrod.RefTest"
minSdkVersion 11
targetSdkVersion 15
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.txt'
}
}
repositories {
flatDir {
dirs 'libs'
}
}
dependencies {
compile( name:'Ref', ext:'aar' )
}
}
Ajout de la référence à la méthode Ref.aar (carré) à l'activité principale de onCreate in RefTest.
int sq = Ref.square( 2 );
Build-> Clean puis Build-> Rebuild.
Cette erreur produite: impossible de trouver la variable de symbole Ref
Je suis sûr que je fais quelque chose de naïf ou tout simplement stupide, mais je ne le vois pas.
.__ Toute aide appréciée.
Lorsque vous importez un AAR à partir d’outils d’aide intégrés à l’aide de l’option Importer aar/jar, Studio crée un module avec cet aar.
Donc, à cet état, vous pouvez voir quelque chose de similaire à l'état mentionné ci-dessous . Lorsque l'écran est sous Android,
Changez votre mode de panneau en projet et ouvrez votre test, vous pouvez réellement voir un fichier build.gradle pour votre module et le fichier correspondant.
C'est pourquoi votre déclaration
compile( name:'Ref', ext:'aar' )
ne fonctionnait pas.
Pour ajouter ceci aar à votre projet (après avoir utilisé import aar/jar), vous pouvez d'abord ajouter le module au fichier settings.gradle (fichier de paramètres de projet).
include ':app', ':testaar'
puis ajoutez directement à votre fichier build.gradle au niveau de l'application
implementation project(':testaar')
2) Une autre façon est de
Cliquez avec le bouton droit de la souris sur votre module d'application -> Sélectionnez Ouvrir les paramètres du module -> Sélectionnez le module -> Aller à l'onglet Dépendances.
P.S, vous pouvez également ouvrir cette fenêtre depuis Build-> Edit Libraries and Dependencies
Vous rencontrerez une fenêtre comme ci-dessous
Cliquez sur la petite icône +, puis sur l'option Module et ajoutez enfin le module requis (testaar)
Synchronisez votre code et le tour est joué, il commencera à fonctionner maintenant.
Vous devriez:
1) Créez la bibliothèque aar
et placez-la simplement dans le répertoire libs
(sans "Fichier-> Nouveau-> Nouveau module-> Importer le package .JAR/.AAR")
2) ajouter à build.gradle (module: app)
dependencies {
...
implementation fileTree(include: ['*.aar'], dir: 'libs')
...
}
Après cela, vous pouvez utiliser Ref.square(int);
Votre apk contiendra après la construction: