欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

React-native橋接Android原生開發(fā)詳解

在開發(fā)RN的漫漫長河中,早晚有那么一天要接觸到安卓的原生開發(fā),筆者來介紹一下其中的酸甜苦辣.對于一個不懂android的小白來說,剛開始有點難,不過都是萬事開頭難.語言是想通的,原理也是大徑若一.

溫江ssl適用于網站、小程序/APP、API接口等需要進行數據傳輸應用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)建站的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!

React-native橋接Android原生開發(fā)詳解

開發(fā)過程中是要集成高德的導航功能,沒有找到好的輪子的,只要寫原生代碼,然后在用JS去調用原生的導航模塊.

首先注冊模塊

其意義在與將類注冊到RN中,才能用JS去調用

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;
  }
}

其中modules.add(new NaviActivity(reactContext));意義就是添加一個安卓原生的activity模塊

這個模塊可以定義方案,RN可以直接調用(方法上必須聲明了@ReactMethod才可以)

@ReactMethod
  public void showFengMap(String mapID){
    Activity currentActivity = getCurrentActivity();
    Intent intent = new Intent(currentActivity, 頁面名.class);
    currentActivity.startActivity(intent);
  }

筆者其中的到嗎是跳轉到其他頁面,這里也可以做一些其他的操作.例如直接去分享

聲明

在安卓程序的app內的MainApplication內,

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

加入剛剛注冊過的包名

JS調用原生代碼

import { NativeModules } from 'react-native';

export default NativeModules.NaviActivity;

筆者這里寫了一個untils/CommonAndroidUntils.js,在需要用的頁面直接引入這個js文件

CommonAndroidUntils.show();

實現(xiàn)跳轉.

集成高德導航

對于一個小白直接去在android studio內集成高德地圖剛開始還是有點難度的.不過理解之后感覺還好.簡單些一下遇到的問題,提醒自己,幫助他人

直接拖入的.jar語音包不能引入

解決辦法是右鍵.jar包,有將.jar引入的選項點擊,等待同步即可.

其余的都是些小問題,根據demo以及文檔輕松解決的不值一提了.

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。

分享文章:React-native橋接Android原生開發(fā)詳解
本文鏈接:http://chinadenli.net/article42/jpcehc.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供自適應網站關鍵詞優(yōu)化定制開發(fā)網站設計公司云服務器

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

外貿網站建設