2016-07-13 5 views
0

私はreact-nativeを初めて使い、実際にモジュールを作成したいと考えています。今のところ、私は時代遅れのモジュールを更新しています。 私の一般的な質問は、パッケージの実行中に現在のアクティビティを取得する方法です。 古い方法はonCreateどのようにgetPackagesメソッドの中で反応するネイティブモジュールにアクティビティを渡すか?

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    mReactInstanceManager = ReactInstanceManager.builder() 
     .setApplication(getApplication()) 
     .setBundleAssetName("index.android.bundle") 
     .setJSMainModuleName("index.android") 
     .addPackage(new MainReactPackage()) 
     .addPackage(new ThePackageClass(this))    // <------ custom package 
     .setUseDeveloperSupport(BuildConfig.DEBUG) 
     .setInitialLifecycleState(LifecycleState.RESUMED) 
     .build(); 

    mReactRootView.startReactApplication(mReactInstanceManager, "ExampleRN", null); 

    setContentView(mReactRootView); 
    } 

内の現在の活動を取得するためにthisキーワードを使用しているが、これはreact-nativeの新しい更新とケースません。私はgetPackagesの方法の下でそれを達成する方法を知りません。

@Override 
protected List<ReactPackage> getPackages() { 
    return Arrays.<ReactPackage>asList(
     new MainReactPackage(), 
     new ThePackageClass(this) <-- this here doesnt work 
); 
} 

ご協力いただければ幸いです。 ありがとうございました!

答えて

0

getPackagesは、ReactNativeHostのメソッドであり、ReactNativeHostにはアプリケーションの参照があります。これを実現するには、アプリケーションクラスの現在のフロントアクティビティを維持できます。

関連する問題