UPDATEを
私は、プロジェクトのルートから、以下の新リアクトネイティブプロジェクトを作成し、実行してみましたReact Nativeのbuilding from sourceの手順に従ってください。ソースからビルドすると、それらの.soファイルを構築するbuildReactNdkLib Gradleタスクが実行されます。
私はこれらの.soファイルを生成する方法を考え出し:buildReactNdkLib
タスクを持っている私は、このbuild.gradle fileを見つけたリアクトネイティブソースコードで
- を。
私は、私の場合にあった、それが実行するコマンドをキャプチャ:
~/Library/Android/sdk/ndk-bundle/ndk-build NDK_PROJECT_PATH=null NDK_APPLICATION_MK=~/.../react-native/ReactAndroid/src/main/jni/Application.mk NDK_OUT=~/.../react-native/ReactAndroid/build/tmp/buildReactNdkLib NDK_LIBS_OUT=~/.../react-native/ReactAndroid/build/react-ndk/all THIRD_PARTY_NDK_DIR=~/.../react-native/ReactAndroid/build/third-party-ndk REACT_COMMON_DIR=~/.../react-native/ReactAndroid/../ReactCommon -C ~/.../react-native/ReactAndroid/src/main/jni/react/jni --jobs 4
反応ネイティブするレポをパスして上記のコマンドで~/.../react-native
を交換してください。
- 私は
Android NDK: Module reactnativejni depends on undefined modules: fbjni
と~/Library/Android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.8/prebuilt/darwin-x86_64/bin/arm-linux-androideabi-g++: Command not found
のようなエラーを受けていました。修正するには、古いバージョンのNDKに切り替える必要がありました。
- Android NDK、Revision 10e(2015年5月)をhereからダウンロードして抽出します。
- 上記のコマンド内のパス
~/Library/Android/sdk/ndk-bundle/ndk-build
を、抽出したフォルダのndk-build
ファイルに変更します。
- 生成された.soファイルは
react-native/ReactAndroid/build/react-ndk/all
になります。
「ndk-build -Cnode_modules/react-native/ReactAndroid/src/main'」を試してください –