1. 程式人生 > >React Native嵌入原生應用的坑

React Native嵌入原生應用的坑

今天試著在原生應用中引入React Native,本以為按照官網的步驟來做就沒問題,結果著實踩了很多坑。現記錄下來,防止以後踩同樣的坑
一、React Native專案在64位android手機上執行,會提示
"/data/data/com.xxx.xxx/lib-main/libgnustl_shared.so" is 32-bit instead of 64-bit  這個錯誤。
解決方法:取消掉所有的64位的.so檔案,全部載入32位的就可以了,下面是步驟
1.在專案的根目錄的 gradle.properties 裡面新增一行程式碼  Android.useDeprecatedNdk=true.
2.在 app的build.gradle 檔案裡新增以下程式碼(在android{ defaultConfig{}}中新增):
ndk{
    abiFilters "armeabi-v7a","x86"
}
packagingOptions {
    exclude "lib/arm64-v8a/libimagepipeline.so"
}
二、Conflict with dependency 'com.google.code.findbugs:jsr305'. Resolved versions for app (3.0.1) and test app (2.0.1) differ
解決方法:在app的build.gradle中新增一下程式碼:(在android{}中)
configurations.all { resolutionStrategy.force'com.google.code.findbugs:jsr305:1.3.9'}
三、undefined is not an object evaluating 'ReactINternals.ReactCurrentOwner
(據說以前沒有這個問題,RN的新版本會有此問題,略坑啊。。。)
解決辦法:在專案的根目錄執行yarn add
[email protected]

相關推薦

React Native嵌入原生應用

今天試著在原生應用中引入React Native,本以為按照官網的步驟來做就沒問題,結果著實踩了很多坑。現記錄下來,防止以後踩同樣的坑 一、React Native專案在64位android手機上執行,會提示 "/data/data/com.xxx.xxx/lib-main/libgnustl_shared.

Android React Native植入原生應用小記

一、React Native教程介紹 二、植入流程: 0、準備工作及一些提示性: 本人系統為Win10系統,安裝了visual studio2015,node.js4.1版本,curl,ssl,python2.7,Android Studio2.1版本及buildToo

React Native嵌入到現有原生應用

如果你正準備從頭開始製作一個新的應用,那麼React Native會是個非常好的選擇。但如果你只想給現有的原生應用中新增一兩個檢視或是業務流程,React Native也同樣不在話下。只需簡單幾步,你就可以給原有應用加上新的基於React Native的特性、畫面和檢視等。

react native 學習筆記----將react native嵌入到Android原生應用

不僅可以在react native 的js介面和現有工程的介面之間跳轉,而且可以把js寫的介面當成一個控制元件,嵌入到現有的activity,作為原生介面的一部分使用。 第一節:按照官方的例子,把js寫頁面放在一個activity,在原生應用裡啟動該activity。 開

React Native 嵌入原生應用

嵌入原生遇到的坑   1.undefined is not an object(ecaluating 'ReactInternals.ReactCurrentOwner') 原因:好像是什麼當前版本不存在啥的 解決方法:在根目錄下 進入控制檯 輸

React-Native 之Android應用開發踩紀 (一)————windows環境下配置

歡迎轉載,轉載註明出處: 我不只是看客 自從在公司中被老大安利了移動開發的未來 React-Native之後開始關注相關,想嘗試相關app開發。正好畢業準備畢設,腦子一熱就選擇了RN來開發一款app……題目上交就不能改了,現在好後悔。。。但硬著頭皮上吧 ,廢

React Native Android原生方向進階一

雖然說react native的設計初衷是為了敏捷開發,write once,run anywhere,但是還是開放了原生接入這一高階功能,而原生也是一位這個開發方向一個繞不過去的坎,今天先跑了一下流程,總結一下先 1、react-native init mengft_module

動手建立一個自己的「React native原生模組

前言 我們在使用RN的時候,會發現RN提供了很多Module供JS呼叫,這些Module能夠滿足我們一些基礎的應用場景,但是在實際的專案中,必定會有一些互動邏輯需要我們自己去實現,這時候就需要我們自定義一些Module供JS呼叫,那麼怎麼才能讓JS呼叫到我們自定義的Module呢? 下面我們就一步步的去實現

React-Native開發中的點實錄

從移動開發的角度來說,iOS和Android都有自己的一些UI特性,所以react-native宣稱的寫一套程式碼就可以通用就是騙人的鬼話,實際開發中,你會發現很多控制元件在iOS和Android上展示的效果不一樣,或者有些屬性支援iOS不支援Android。rea

react native接入原生專案(mac pro)

首先保證安裝了node,watchman,yarn。 1.新建一個資料夾A,裡面新建一個資料夾android,然後把專案根目錄下所有內容放入這個android裡。直接全選複製的話沒有git,可以把整個專案移過去再改名為android。 2.在A下新建package.json: {

react-native-wechat接入填文件

React Native(以下簡稱RN)繫結微信分享/微信登入/微信支付的實現演示+原始碼+注意事項!微信的呼叫大同小異,本文實現了微信的分享功能,其他功能可以在連結文件裡面找到具體的方法。 本文分文三個部分:一、效果展示;二、實現步驟;三、注意事項; 一、效果展示

React Native iOS原生模組開發實戰|教程|心得|如何建立React Native iOS原生模組

尊重版權,未經授權不得轉載 本文出自:賈鵬輝的技術部落格(http://blog.csdn.net/fengyuzhengfan/article/details/54691432) 告訴大家一個好訊息,為大家精心準備的React Native視訊教程釋出了,大家

React Native Android原生模組開發實戰|教程|心得|如何建立React Native Android原生模組

尊重版權,未經授權不得轉載 本文出自:賈鵬輝的技術部落格(http://blog.csdn.net/fengyuzhengfan/article/details/54691503) 告訴大家一個好訊息,為大家精心準備的React Native視訊教程釋出了,大家

react native 與伺服器互動

今天遇到兩個坑 一個是以表單formData封裝的JSON格式資料不是標準的json格式,導致伺服器解析資料是錯誤返回400 bad request。例如 let formData = new FormData(); formData.append("api_accou

React-Native 踩過的

React Native執行的時候,經常碰到React Native unable to load script from assets index.android.bundle on windows解決方法有2種: 方法一:設定IP和埠 具體步驟:報錯頁面晃動手機,顯示

React Native Android 開發巨

〇. Android Native 接入 React Native 1. 基本配置規則 https://reactnative.cn/docs/integration-with-existing-apps/ 2. 稍作優化 如果Native庫用得太多,建議把package

React Native原生iOS Objective-C的互動解決方案

用一個RCTRootView作為iOS裡一個Controller的view。在RN層的左上角返回按鈕點選後pop回iOS層。發現無法執行,除錯發現controller的navigationCont的值是空的。發現與RN互動的這個self地址和iOS層的self並不是同一個

React Native封裝原生元件釋出到npm

因為一個任務,要寫原生的獲取使用者手機資料夾,實現使用者自定義資料夾的功能,寫好了之後嘗試封裝成元件。1. 首先,有一個rn專案,用Adnroid Studio開啟 android -> app -> build.gradle如圖新建一個 Android Modu

執行react-native專案遇到的

最近接手了一個react-native專案,用xcode執行的時候,各種坑,各種報錯,現在抽時間整理一下 1.找不到標頭檔案 RCTJPushModule.h 一上來就報這個錯,翻閱一些資料找到解決辦法 開啟終端,cd到專案資料夾,輸入 npm install jpu

初始化react-native專案執行採

第一坑.react和react-native版本配合有很高的要求 init專案啟動後報如下錯誤: error: bundling failed: "Unable to resolve module `AccessibilityInfo` from `/Users/appl