2015-10-21 9 views
7

私は現在、反応ネイティブで少し苦労しています。 私が持っておきたいのは、自分のアプリケーションの一部に含めることができる反応ネイティブに基づくライブラリプロジェクトです。リアクションネイティブのAndroidライブラリプロジェクト

私が試した最初のことは、すべての基本反応セットアップコード[1]を既存のアプリケーション内のフラグメントに移動することでした。これは問題なく動作しました。

その後、空のアクティビティを備えた全く新しいAndroidプロジェクトを開始しました。 このプロジェクトには、「反応するネイティブフラグメント」を含む新しいAndroidライブラリプロジェクトモジュールが追加されました。その後、私のルートプロジェクトフォルダ内のネイティブプロジェクトを初期化しました。

私の現在のプロジェクトの構造は次のようになります。

ReactApplication 
- basic files (index.android.js, index.ios.js, package.json, build.gradle, settings.gradle) 
- app/ (contains the real native android app which includes the "react native fragment") 
- reactlib/ (library project which contains a fragment with the code from [1]) 
- ios/ 
- node_modules/ (contains react-native) 

何の問題もなくnpm start作品を通じてDEV-サーバーを起動するものの、すぐに私はAndroidアプリを起動すると、私はfolowwingのlogcat出力を得る:

W/unknown:React(26957): Unable to dispatch keyboard events in JS as the react instance has not been attached 
W/unknown:React(26957): You seem to be running on device. Run 'adb reverse tcp:8081 tcp:8081' to forward the debug server's port to the device. 
E/(26957): Unable to load script from assets: index.android.bundle 
E/ReactNative(26957): Got JS Exception: ReferenceError: Can't find variable: require 

私はadb reverse tcp:8081 tcp:8081のことを行いましたが、エラーはまだ表示されています。

後でAndroidライブラリプロジェクトからaarを作成し、maven経由でアクセスしたいと考えています。

私は間違っていますか?それとも、私がやりたいことは簡単にできないのですか?

[1] https://facebook.github.io/react-native/docs/embedded-app-android.html#add-native-code

答えて

3

をデバッグし、物事のカップルを試した後、私はAARにバンドルされたとき、それは、サーバーからのバンドルファイルの読み込みに失敗したことを考え出しました。

アンドロイドアセットフォルダにindex.android.bundleを追加すると、それが動作し始めます。

+0

index.android.bundleが存在しない場合は? – Zakos

関連する問題