我深化發展與反應原生的應用程序,但我需要把本機模塊來使用Facebook AppInvite讓用戶邀請朋友在我的應用程序。Facebook的AppInvite Android Studio中無法解析法秀(
然而,我跟着作出反應本地的文檔中所有添加本機模塊在本地反應(之間的聯繫反應本地和本地代碼的工作),但用Java編寫的本機模塊不能正常工作。 https://facebook.github.io/react-native/docs/native-modules-android.html
package com.App.App;
import android.app.Activity;
import android.content.Context;
import android.graphics.Bitmap;
import com.facebook.react.bridge.NativeModule;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.bridge.ReactContext;
import com.facebook.react.bridge.ReactContextBaseJavaModule;
import com.facebook.react.bridge.ReactMethod;
import com.facebook.FacebookSdk;
import com.facebook.CallbackManager;
import com.facebook.FacebookException;
import com.facebook.share.model.AppInviteContent;
import com.facebook.share.widget.AppInviteDialog;
import android.support.v4.app.DialogFragment;
import java.util.Map;
import java.util.HashMap;
public class FacebookInviteModule extends ReactContextBaseJavaModule {
//Cannot be modified since it use by reactnative
public FacebookInviteModule(ReactApplicationContext reactContext) {
super(reactContext);
}
//Cannot be modified since it use by reactnative
@Override
public String getName() {
return "FacebookInvite";
}
@ReactMethod
public void showModule(){
String appLinkUrl, previewImageUrl;
appLinkUrl = "https://www.app.com/myapplink";
previewImageUrl = "https://www.app.com/my_invite_image.jpg";
if (AppInviteDialog.canShow()) {
AppInviteContent content = new AppInviteContent.Builder()
.setApplinkUrl(appLinkUrl)
.setPreviewImageUrl(previewImageUrl)
.build();
AppInviteDialog.show(this, content);
}
}
}
函數showModule()中沒有任何東西可以傳遞,因爲它在JavaScript代碼中使用顯示原生組件,因爲它在反應原生中是這樣調用的:NativeModules.FacebookInvite.showModule();
在函數showModule()的代碼,我使用的是完全相同的代碼在Facebook上的官方文檔:https://developers.facebook.com/docs/app-invites/android
,但我得到一個錯誤: AppInviteDialog.show(此內容); 說「無法解析方法」顯示(com.App.App.FacebookInviteModule,com.facebook.share.model.AppInviteContent)「
我非常瞭解ReactNative,但我不太瞭解Java和我不知道不明白錯誤。 文件代碼與MainActivty和MainApplication位於相同的文件夾中。
所以,如果有人知道我能做些什麼來讓這裏的工作,這將是美妙的:d
太謝謝你了!bennygenel有效 !很遺憾de-react-native-fbsdk有很好的文檔記錄。 –