React Native Android:显示来自Java的活动

Ata*_*adi 7 javascript java android react-native react-native-android

我需要在React-native中显示一个Activity(Native android,Java).我知道有几次被问过,但没有人帮我.我没有找到任何关于如何在React-Native中调用/打开活动的教程或文档.放置活动的位置以及如何将其注册/添加到项目中.

有没有任何教程或示例代码?

我正在使用react-native-camera,当我从RN运行它时,它显示了来自rn-camera的视图,我查看了它的源代码,但它没有Activity.

如果您可以确定哪些模块的react-native正在使用活动,那么它也可以提供帮助.(显示反应原生的android活动).

有一些关于如何在现有的android项目中添加本机的文档,但是我找不到任何关于如何从android导入活动的指南.

我非常感谢你的帮助.

小智 4

希望我正确理解你的问题:你想要的是从 javascript 代码显示一个活动(java 代码)。

我建议实现一个本机模块:https://facebook.github.io/react-native/docs/native-modules-android.html

Native模块是java和javascript之间的桥梁。所以如果你的本机模块有这个:

@Override
public String getName() {
    return "YourModule";
}

@ReactMethod
public void showYourActivity() {
   Intent intent = new Intent(mContext, YourActivity.class); // mContext got from your overriden constructor
   getCurrentActivity().startActivity(intent);
}
Run Code Online (Sandbox Code Playgroud)

然后在你的js代码中:

import {NativeModules} from 'react-native';

NativeModule.YourModule.showYourActivity();
Run Code Online (Sandbox Code Playgroud)

希望有帮助。您也可以在它们之间传输数据,请查看文档。