Heim  >  Artikel  >  Web-Frontend  >  Wie implementiert man React-native Bridging auf Android und was sind die spezifischen Schritte?

Wie implementiert man React-native Bridging auf Android und was sind die spezifischen Schritte?

亚连
亚连Original
2018-06-11 16:29:462240Durchsuche

Dieser Artikel stellt hauptsächlich die detaillierte Erklärung der nativen Android-Entwicklung mit React-native vor. Jetzt teile ich ihn mit Ihnen und gebe Ihnen eine Referenz.

Auf dem langen Weg der RN-Entwicklung wird man früher oder später mit der nativen Entwicklung von Android in Berührung kommen. Der Autor wird die Höhen und Tiefen vorstellen. Für einen Anfänger, der Android nicht versteht Am Anfang ist es etwas schwierig. Die Sprache muss verstanden werden, und das Prinzip ist das gleiche Ich muss die Navigationsfunktion von Amap integrieren, aber wir haben keine gute gefunden. Schreiben Sie einfach den nativen Code und rufen Sie dann mit JS das native Navigationsmodul auf das Modul

Die Bedeutung besteht darin, die Klasse bei RN zu registrieren. Sie können JS verwenden, um

public class AnExampleReactPackage implements ReactPackage {
  @Override
  public List<ViewManager> createViewManagers(ReactApplicationContext reactContext) {
    return Collections.emptyList();
  }
  @Override
  public List<NativeModule> createNativeModules(ReactApplicationContext reactContext) {
    List<NativeModule> modules = new ArrayList<>();

    modules.add(new NaviActivity(reactContext));
    return modules;
  }
}

aufzurufen, wobei module.add(new NaviActivity(reactContext)); die Bedeutung ist Fügen Sie ein natives Android-Aktivitätsmodul hinzu

Dieses Modul kann die Lösung definieren und RN kann direkt aufrufen (@ReactMethod muss in der Methode deklariert werden)

@ReactMethod
  public void showFengMap(String mapID){
    Activity currentActivity = getCurrentActivity();
    Intent intent = new Intent(currentActivity, 页面名.class);
    currentActivity.startActivity(intent);
  }
Der Autor meint, zu anderen zu springen Sie können hier auch einige andere Vorgänge ausführen, z. B.

Deklaration

In der Hauptanwendung in der App des Android-Programms,

rrree

Fügen Sie den gerade registrierten Paketnamen hinzu

JS, um den nativen Code aufzurufen

@Override
  protected List<ReactPackage> getPackages() {
   return Arrays.<ReactPackage>asList(
     new MainReactPackage(),
      new AnExampleReactPackage()
   );
  }

Der Autor hat hier eine Untils/CommonAndroidUntils.js geschrieben und diese js direkt eingeführt Datei

import { NativeModules } from &#39;react-native&#39;;

export default NativeModules.NaviActivity;

auf die erforderliche Seite, um den Sprung zu erreichen.

Amap-Navigation integrieren

Für einen Anfänger ist die direkte Integration etwas schwierig Amap-Karte in Android Studio, aber nachdem ich es verstanden habe, lasst uns die aufgetretenen Probleme vereinfachen. Erinnert euch daran, anderen zu helfen

Das direkt gezogene .jar-Sprachpaket kann nicht importiert werden

Die Lösung besteht darin, mit der rechten Maustaste auf das .jar-Paket zu klicken und auf die Option zum Importieren von .jar zu klicken.

Der Rest sind kleinere Probleme, die anhand der Datei leicht gelöst werden können Demo und Dokumentation.

Das Obige habe ich für alle zusammengestellt. Ich hoffe, dass es in Zukunft für alle hilfreich sein wird.

Verwandte Artikel:

So verwenden Sie das Babel-Installations- und Konfigurations-Tutorial

So konfigurieren Sie die Babel-Konfigurationsdatei in vue-cli

Verwenden Sie node.js, um Douyins automatische Funktion zum Greifen roter Umschläge zu implementieren

Das obige ist der detaillierte Inhalt vonWie implementiert man React-native Bridging auf Android und was sind die spezifischen Schritte?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn