Un problème est survenu lors de la création d'une application avec 'react-native-maps'
voici mon fichier setting.gradle
include ':react-native-maps'
project(':react-native-maps').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-maps/Android')
dépendances du fichier Android/app/build.gradle
dependencies {
compile project(':react-native-maps')
compile fileTree(dir: "libs", include: ["*.jar"])
compile "com.Android.support:appcompat-v7:23.0.1"
compile "com.facebook.react:react-native:+" // From node_modules
compile 'com.airbnb.Android:react-native-maps:0.6.0'
}
Voici mon fichier MainActivity.Java mis à jour avec MapsPackage ()
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new MainReactPackage(),
new MapsPackage()
);
}
erreur qui vient:
Le serveur JS est déjà en cours d'exécution . Construction et installation de l'application sur l'appareil (cd Android && gradlew.bat install Debug ...
ECHEC: La construction a échoué avec une exception.
Qu'est-ce qui a mal tourné: Un problème est survenu lors de la configuration du projet ': app'.
Impossible d'évaluer le module react-native-maps: Configuration avec le nom 'default' n ot trouvé.
Essayez: Exécutez-le avec l'option --stacktrace pour obtenir le suivi de la pile. Exécutez-la avec l'option --info ou --debug Pour obtenir davantage de sorties de journal.
ÉCHEC DE CONSTRUCTION
Temps total: 13,479 secondes Impossible d'installer l'application sur l'appareil, lisez l'erreur ci-dessus pour plus de détails.
j'ai mentionné toute la procédure dans le lien indiqué https://github.com/lelandrichardson/react-native-maps/blob/master/docs/installation.md
j'ai aussi vu https://github.com/lelandrichardson/react-native-maps/issues/288 mais je n'ai pas pu résoudre l'erreur.
s'il vous plaît aider Merci d'avance
L'erreur est dans les dépendances du fichier build.gradle, essayez avec ceci:
dependencies {
compile fileTree(dir: "libs", include: ["*.jar"])
compile "com.Android.support:appcompat-v7:23.0.1"
compile "com.facebook.react:react-native:+" // From node_modules
compile 'com.airbnb.Android:react-native-maps:0.6.0'
}
Suppression de la ligne compile project(':react-native-maps')
le problème est résolu. Cette ligne est créée par rnpm link
mais est un bogue.
Dans MainActivity.Java devrait être comme ceci:
package com.yourapp; //<- put your app name
import com.facebook.react.ReactActivity;
import com.airbnb.Android.react.maps.MapsPackage; //<- this line is important
import com.facebook.react.ReactPackage;
import com.facebook.react.Shell.MainReactPackage;
import Java.util.Arrays;
import Java.util.List;
public class MainActivity extends ReactActivity {
@Override
protected String getMainComponentName() {
return "yourapp"; //<- put your app name
}
@Override
protected boolean getUseDeveloperSupport() {
return BuildConfig.DEBUG;
}
@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new MainReactPackage(),
new MapsPackage(this) //here you must be write the param this
);
}
}
Fonctionne bien après le passage de [email protected] à [email protected]
J'utilise [email protected]
Voici mes paramètres:
Android/app/build.gradle
dependencies {
compile project(':react-native-maps')
}
Android/settings.gradle
include ':react-native-maps'
project(':react-native-maps').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-maps/Android')
MainApplication.Java
package com.package;
import Android.app.Application;
import Android.util.Log;
import com.facebook.react.ReactApplication;
import com.facebook.react.ReactInstanceManager;
import com.facebook.react.ReactNativeHost;
import com.facebook.react.ReactPackage;
import com.facebook.react.Shell.MainReactPackage;
import Java.util.Arrays;
import Java.util.List;
import com.AirMaps.AirPackage; // <- Add this line
import com.i18n.reactnativei18n.ReactNativeI18n;
import com.oblador.vectoricons.VectorIconsPackage;
public class MainApplication extends Application implements ReactApplication {
private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
@Override
protected boolean getUseDeveloperSupport() {
return BuildConfig.DEBUG;
}
@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new AirPackage(), // <- Add this line
new MainReactPackage(),
new ReactNativeI18n(),
new VectorIconsPackage()
);
}
};
@Override
public ReactNativeHost getReactNativeHost() {
return mReactNativeHost;
}
}
AndroidManifest.xml
<application
Android:name=".MainApplication"
Android:allowBackup="true"
Android:label="@string/app_name"
Android:icon="@mipmap/ic_launcher"
Android:theme="@style/AppTheme">
<!--reference your google_map_id-->
<meta-data
Android:name="com.google.Android.geo.API_KEY"
Android:value="@string/google_map_id"/>
</application>
Je suivais les instructions de:
https://github.com/airbnb/react-native-maps/blob/master/docs/installation.md
Je ai noté que Android/settings.gradle
devrait désigner react-native-maps/lib/Android
comme ci-dessous:
include ':react-native-maps'
project(':react-native-maps').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-maps/lib/Android')