Ik heb een Android-app gebouwd met React Native, deze is met succes gebouwd, maar wanneer ik de app op mijn virtuele Android-apparaat uitvoer, verschijnt er een volledig rood scherm met de volgende fout:
Ik heb nog nooit native app-ontwikkeling gedaan en ik heb ook geen kennis van Java, dus ik heb geen idee wat deze fout betekent en hoe ik dit kan oplossen.
Antwoord 1, autoriteit 100%
De naam van het pakket dat aan deze fout is gekoppeld, is niet AirMapModule
maar MapsPackage
van com.airbnb.android.react.maps
.
In uw MainApplication.java
in directory : android/app/src/main/java/../../
verwijder alle dubbele vermeldingen van:
- het importpakket:
import com.airbnb.android.react.maps.MapsPackage
- de aanroep van de constructor van de module:
new MapsPackage()
in functiegetPackages
Antwoord 2, autoriteit 38%
Ga naar bestand “MainApplication.java” (onder .\android\app\src\main\java\com\projectName\
)
Zorg ervoor dat u onder de functie getPackages()
geen dubbele regels hebt (in mijn geval had ik tweemaal “new MapsPackage()”).
Ook dubbele importen oplossen.
Antwoord 3, autoriteit 18%
Open het bestand MainApplication.java
op dit adres: android/app/src/main/java/com/projectName/MainApplication.java
en voeg de volgende code toe aan het bestand MainApplication.java
:
@Override
public boolean canOverrideExistingModule() {
return true;
}
En alles werd correct.
Antwoord 4, autoriteit 13%
Ga naar het MainAplication-bestand.
Verwijder duplicaat pakket en verwijder duplicaat pakket in getPackages()
methode
@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new MainReactPackage(),
new VectorIconsPackage()
);
}
Probeer daarna dit commando in je terminal:
- cd android
- ./gradlew clean
Antwoord 5, autoriteit 10%
Als de versie van RN die u gebruikt >= 0,60 is, bestaat de mogelijkheid dat automatisch koppelen en uw handmatige koppeling twee keer hetzelfde doen. Je hebt twee opties:
1- U kunt codewijzigingen ongedaan maken met de methode getPackages
2- U kunt automatisch koppelen uitschakelen in het bestand react-native-config.js
.
6, Autoriteit 2%
U kunt inchecken in bestand proberen MainApplication.java
in map: android\app\src\main\java
is een dubbele pakket airmapmodule bestaat of niet, en niet te verwijderen 1 indien nodig.
7
Indien geïnstalleerde bibliotheek reageert-navigatie U kunt via Android Studio uitvoeren.
Verwijder anders bibliotheek reageren-navigatie en gewoon garen is het zal werken.