繁体   English   中英

如何从ReactApplication中的ReactNativeHost中获取MainActivity(ReactActivity)

[英]How to get the MainActivity (ReactActivity) from within the ReactNativeHost within the ReactApplication

这个问题仅涉及react-native 0.29及以后:

我正在使用的模块需要我将主要活动传递给它的构造函数。

直到反应原生29我曾经这样传递它:

@Override
protected List<ReactPackage> getPackages() {
    return Arrays.<ReactPackage>asList(
            new MainReactPackage(),
            new OrientationPackage(this), //<-------
    );
}

但是现在这部分代码必须在MainApplication移动,我不再知道如何从代码的那一部分访问MainActivity。

这就是我的MainApplication.java文件现在的样子:

public class PlaceAVoteApplication extends Application implements ReactApplication{


    private static CallbackManager mCallbackManager = new CallbackManager.Factory().create();

    private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
        @Override
        protected boolean getUseDeveloperSupport() {
            return BuildConfig.DEBUG;
        }

        /**
         * A list of packages used by the app. If the app uses additional views
         * or modules besides the default ones, add more packages here.
         */
        @Override
        protected List<ReactPackage> getPackages() {
            return Arrays.<ReactPackage>asList(
                    new MainReactPackage(),
                    new OrientationPackage(this), //<-- Error here because this is not the MainActivity


            );
        }
    };

    @Override
    public ReactNativeHost getReactNativeHost() {
        return mReactNativeHost;
    }
}

有什么建议吗?

这对我有用

@Override
    protected List<ReactPackage> getPackages() {
        return Arrays.<ReactPackage>asList(
                new MainReactPackage()
                ,new OrientationPackage(this)
        );
    }
};

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM