2016-08-04 4 views
2

私はReact Nativeプロジェクトを持っていて、iOSの両方のシミュレータとデバイスで正常に動作します。リリースモードで未知のモジュール "react-native-safari-view"を要求する

はしかし、Androidのために、それは何の問題もなくシミュレータ上で正常に動作しますが、リリースビルドなどのデバイス上で実行すると、それは私に、このエラーを与える:

Requiring unknown module "react-native-safari-view". 

私はnpm cache cleannpm install数回試みたが、それは動作しません。

モジュールはnode_modulesフォルダにあり、dependenciespackage.jsonにあります。

この原因は何ですか?リリースビルドでのみ発生するのはなぜですか?

更新:これは固定することが困難である場合、それはDEVモードに含まJSバンドルで署名されたAPKを生成することが可能でしょうか?

+0

node_modulesフォルダ内にパッケージフォルダがありますか? – Sriraman

+0

@Sriramanはい、そうです。 –

+0

あなたの 'package.json'ファイルで' react-native-safari-view 'が 'dependencies'か' devDependencies'の下に現れますか? –

答えて

0

react-native-safari-viewモジュールはAndroid用に設計されていないためです。

チェックこのアウト:(GitHubindex.android.jsファイル内)

var SafariViewManager = { 
    test: function() { 
    warning('Not yet implemented for Android.'); 
    }, 
    isAvailable: function() { 
    ... 
    } 
}; 

たぶん、あなたはSafariViewManagerオブジェクトを開始し、それをisAvailable()を確認せずindex.ios.jsshow()のような他の関数を呼び出していますか?

+0

まさに! 'show()'を使う前に 'isAvailable()'を呼び出さないと、Androidでエラーが発生しました。本当にありがとう! –

関連する問題