React Native Android:如何从Java中展示一个Activity

8
我需要在React-Native中展示一个Activity(原生Android,Java)。我知道这个问题已经被问过几次了,但是没有一个能帮到我。我没有找到任何教程或文档来介绍如何在React-Native中调用/打开活动,以及如何将其放置在哪里以及如何将其注册/添加到项目中。
是否有任何教程或示例代码?
我正在使用react-native-camera,当我从RN运行它时,它会显示rn-camera的视图,我查看了它的源代码,但它没有一个Activity。
如果您能告诉我哪些模块用于在React-Native中使用活动,那也可以帮助。(在React Native中显示一个Android活动)。
有一些关于如何将React Native添加到现有Android项目中的文档,但我找不到任何关于如何从Android导入活动的指南。
我非常感谢您的帮助。
1个回答

4
希望我理解您的问题正确:您想要从JavaScript代码显示一个Activity(Java代码)。
我建议实现一个本地模块:https://facebook.github.io/react-native/docs/native-modules-android.html 本地模块是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);
}

然后在你的 JavaScript 代码中:

import {NativeModules} from 'react-native';

NativeModule.YourModule.showYourActivity();

希望这可以帮到您。您还可以在它们之间传输数据,请查看文档。


谢谢。我知道这个,实际上我正在寻找一个详细的例子,但是我找不到任何一个。 - Ata Mohammadi
1
你好 @Ataomega,你能帮我想一个办法吗?我想要做相反的事情,也就是说,我想从 Native Java 代码中打开一个 React Native 组件。 - Mostafiz Rahman
你可以在这里找到一个完整的、自包含的示例。(它也涵盖了iOS的同一问题。) - Petter Hesselberg

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接