深入小程式系列(三) ReactNative和小程式混編

linkstar發表於2020-04-17

背景

本文我們將開一下腦洞,在 ReactNative 工程基礎上下整合及執行小程式方案。

先看一下效果如下:

                                深入小程式系列(三) ReactNative和小程式混編

環境搭建

npm install -g react-native-cli yarn


官方的 環境搭建文件已經有詳細的說明,這裡不再重複。大家可以看下我本地的環境配置版本,目前整個專案執行穩定,可以借鑑。

$ react-native info
info Fetching system and libraries information...System:
    OS: macOS 10.15.3
    CPU: (8) x64 Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz
    Memory: 93.87 MB / 16.00 GB
    Shell: 3.2.57 - /bin/bash
  Binaries:
    Node: 10.20.1 - ~/.nvm/versions/node/v10.20.1/bin/node
    Yarn: 1.22.4 - ~/.nvm/versions/node/v10.20.1/bin/yarn
    npm: 6.14.4 - ~/.nvm/versions/node/v10.20.1/bin/npm
    Watchman: Not Found
  Managers:
    CocoaPods: 1.9.1 - /usr/local/bin/pod
  SDKs:
    iOS SDK:
      Platforms: iOS 13.4, DriverKit 19.0, macOS 10.15, tvOS 13.4, watchOS 6.2
    Android SDK:
      API Levels: 26, 28, 29
      Build Tools: 28.0.3, 29.0.2, 29.0.3, 30.0.0
      System Images: android-26 | Google Play Intel x86 Atom
      Android NDK: Not Found
  IDEs:
    Android Studio: 3.6 AI-192.7142.36.36.6241897
    Xcode: 11.4/11E146 - /usr/bin/xcodebuild
  Languages:
    Java: 10.0.1 - /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home/bin/javac
    Python: 2.7.16 - /usr/bin/python
  npmPackages:
    @react-native-community/cli: Not Found
    react: 16.11.0 => 16.11.0 
    react-native: 0.62.2 => 0.62.2 
  npmGlobalPackages:
    *react-native*: Not Found

新建 ReactNative 樣例工程

新建 ReactNative 工程

react-native init mopdemo

稍等一會...

初始化專案完成之後,你可以選擇兩種不同的方式執行 App 在 iOS/Android 平臺:

注意!ReactNative需要依賴本地安裝對應的 iOS,Android 開發工具,即需要安裝 Xcode 和 AndroidStudio。具體安裝使用方法這裡不贅述。

這裡我們用 VSCode+Xcode 作為開發組合環境。

整合小程式解析引擎

這裡我們採用凡泰整合免費社群版的小程式解析引擎,只需要 10 行程式碼量不到即可完成小程式整合。


1、引入小程式引擎外掛。在 package.json 檔案中引入小程式 ReactNative 外掛

"react-native-mopsdk": "^1.0.1"

2、在 main.dart 檔案中增加以下小程式引擎初始化方法。 Mop.instance.initialize 這裡需要用到 sdkkey 和 secret。可以直接在 免費註冊獲取。註冊使用方法可以參考 接入指引

import MopSDK from 'react-native-mopsdk';
// 1. mop初始化
MopSDK.initialize({
    appkey: '22LyZEib0gLTQdU3MUauASlb4KFRNRajt4RmY6UDSucA',
    secret: '4a915e447bcbd439',
    apiServer: '
    apiPrefix: '/api/v1/mop'
  }, (data) => {
    console.log('message;', data);
  });

3、開啟小程式

MopSDK.openApplet('appid','','',(data)=>{});
  • SDKKEY 和  Secret 可以從前面部署的社群版的管理後臺獲取。

  • apiServer 為這裡是小程式生態後端的服務地址也就是前文所輸入的 IP:埠

  • 小程式id 為在管理後臺上架的小程式唯一ID(在小程式小架時自動生成)

  • 上述的引數可以在前文伺服器部署的後臺介面上獲取,亦可以在沒有部署服務端的情況下在 快速註冊獲取。


  • 重要事情說三遍,您可以在官方的 中檢視示例程式碼


文章來源:凡泰小程式



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69971226/viewspace-2686872/,如需轉載,請註明出處,否則將追究法律責任。

相關文章