为什么facebook应用程序链接在react native中不起作用



我正在尝试为我的react原生应用程序集成facebook应用程序链接,但不幸的是,它似乎没有按预期工作。首先,我遵循了文档中提到的说明。所以我使用了react原生facebook应用程序链接,并试图使用广告助手进行验证,但我无法获得url。

这是我添加的代码,

<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:launchMode="singleTask"
android:screenOrientation="portrait"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize|uiMode"
android:windowSoftInputMode="adjustPan"
android:exported="true">
<intent-filter>
<data android:scheme="sample" android:host="open"/>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
</intent-filter>
</activity>

我已经在清单文件中添加了密钥,

<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
<meta-data android:name="com.facebook.sdk.AdvertiserIDCollectionEnabled"
android:value="true"/>

我还实现了方法

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
AppLinkData.fetchDeferredAppLinkData(this,
new AppLinkData.CompletionHandler() {
@Override
public void onDeferredAppLinkDataFetched(AppLinkData appLinkData) {
Log.d("urls", String.valueOf(appLinkData));
}
}
);
}

由于我正在使用react native构建应用程序,我在app.js中添加了以下代码

async componentDidMount () {
FacebookAppLink.initializeSDK();
const url = await FacebookAppLink.fetchUrl();
if(url){
console.log("FACEBOOOK URL: ", url)
}
}

最后,我尝试使用广告助手,在此处输入图像描述

但是我没有收到URL。它被重定向到应用程序,但url没有打印在控制台中。请注意,我遵循的步骤是,

  1. 已卸载应用程序
  2. 生成链接,我在脸书上收到通知
  3. 使用android studio重建并安装应用程序
  4. 然后点击该链接

我不确定我做错了什么。我们将非常感谢您的帮助。提前谢谢。

我认为您不需要在项目中再次实现以下本机方法

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
AppLinkData.fetchDeferredAppLinkData(this,
new AppLinkData.CompletionHandler() {
@Override
public void onDeferredAppLinkDataFetched(AppLinkData appLinkData) {
Log.d("urls", String.valueOf(appLinkData));
}
}
);
}

它已经在该库中实现,并从那里解析/拒绝promise。

你只需要把你在componentDidMount中写的东西写出来就可以了。

最新更新