0

尝试创建 dynamicLink 时,会弹出此错误:

您尝试通过调用 firebase.app() 使用未安装在您的 Android 项目上的 firebase 模块 确保您有:

  1. 在“MainApplication.java”文件中导入了“io.invertase.firebase.app.ReactNativeFirebaseAppPackage”模块。

  2. 在 RN 'getPackages()' 方法列表中添加了 'new ReactNativeFirebaseAppPackage()' 行。

有关完整设置说明,请参阅http://invertase.link/android

我尝试安装、导入和配置@react-native-firebase/dynamic-links, react-redux-firebase, @firebase/app, firebase/app.

目前react-redux-firebase正在工作,我可以检索数据并将其发送到 firebase 数据库。有什么方法可以使用firebase来自这个模块的添加动态链接?现在,我尝试创建一个这样的链接:

import dynamicLinks from "@react-native-firebase/dynamic-links";

export class Baklijst extends Component {
    onAddPerson = async () => {
        const link = dynamicLinks().buildLink({
            link: "https://tomgroot.nl",
            domainUriPrefix: "https://baklijst.page.link",
        });
        console.log(link);
        return link;
    };

react-redux-firebase在我的App.js

if (!firebase.apps.length) {
    firebase.initializeApp(FirebaseConfig);
} else {
    firebase.app();
}

...

const rrfProps = {
    firebase,
    config: rrfConfig,
    dispatch: store.dispatch,
};

...
export default function App() {
   return (
   ...
       <ReactReduxFirebaseProvider {...rrfProps}>
   ...
   );
}
...
4

1 回答 1

0

根据文档,使用以下内容引用您的 react-native-firebase 应用程序。

import firebase from '@react-native-firebase/app';

应该这样导入其他模块

import '@react-native-firebase/dynamic-links';
// or
import dynamicLinks from '@react-native-firebase/dynamic-links';

要创建动态链接,您可以从文档中复制示例:

import dynamicLinks from '@react-native-firebase/dynamic-links';

async function buildLink() {
  const link = await dynamicLinks().buildLink({
    link: 'https://invertase.io',
    // domainUriPrefix is created in your Firebase console
    domainUriPrefix: 'https://xyz.page.link',
    // optional setup which updates Firebase analytics campaign
    // "banner". This also needs setting up before hand
    analytics: {
      campaign: 'banner',
    },
  });

  return link;
}

来源:https ://rnfirebase.io/dynamic-links/usage#create-a-link

于 2021-05-26T23:50:51.443 回答