更新记录

1.0.0(2023-01-10)

初始版本


平台兼容性

Android Android CPU类型 iOS
适用版本区间:6.0 - 12.0 armeabi-v7a:支持,arm64-v8a:支持,x86:未测试 适用版本区间:9 - 15

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择


BenBen-FacebookLogin使用说明

1、Facebook登录

方法名:facebookLogin

传入参数:无

返回参数:code(code为1时调用成功)、data、msg,其中data中数据如下

 {
     "first_name" = Hua;
     id = 108313955329236;
     "last_name" = Li;
     name = "Hua Li";
     picture =     {
         data =         {
             height = 50;
             "is_silhouette" = 1;
             url = "https://scontent.fhkg1-1.fna.fbcdn.net/v/t1.30497-1/84628273_176159830277856_972693363922829312_n.jpg?stp=c15.0.50.50a_cp0_dst-jpg_p50x50&_nc_cat=1&ccb=1-7&_nc_sid=12b3be&_nc_ohc=Y_mFEie7CckAX_t5ena&_nc_ht=scontent.fhkg1-1.fna&edm=AP4hL3IEAAAA&oh=00_AT_2efrYEaW-Xei8_q-PqGBf2Qqj1OcLVouqn7PFRdihhA&oe=63275299";
             width = 50;
         };
     };
 }
代码示例
const facebookModule = uni.requireNativePlugin("BenBen-FacebookLogin")
const modal = uni.requireNativePlugin('modal');
    export default {
        onLoad() {
            plus.globalEvent.addEventListener('TestEvent', function(e) {
                modal.toast({
                    message: "TestEvent收到:" + e.msg,
                    duration: 1.5
                });
            });
        },
        methods: {
            facebookLogin() {
                // 调用异步方法
                facebookModule.facebookLogin({
                    },
                    (ret) => {
                        modal.toast({
                            message: ret,
                            duration: 1.5
                        });
                    })
            }
        } 
    }
2、Facebook 分享

方法名:facebookShareImage 分享图片

传入参数:share_image(本地图片路径),quote(引用)

方法名:facebookShareWebPage 分享网页

传入参数:share_link(网络地址)

代码示例
const facebookModule = uni.requireNativePlugin("BenBen-FacebookLogin")
const modal = uni.requireNativePlugin('modal');
    export default {
        onLoad() {
            plus.globalEvent.addEventListener('TestEvent', function(e) {
                modal.toast({
                    message: "TestEvent收到:" + e.msg,
                    duration: 1.5
                });
            });
        },
        methods: {
            // 分享链接
            facebookShareWebPage() {
                facebookModule.facebookShareWebPage({
                        'share_link': 'https://developers.facebook.com',
                        'quote': '祖国统一'
                    },
                    (ret) => {
                        modal.toast({
                            message: ret,
                            duration: 1.5
                        });
                    })
            },
            // 分享图片
            facebookShareImage() {
                // 下载
                uni.downloadFile({
                    url: 'https://i.picsum.photos/id/20/200/200.jpg?hmac=wHmtG3BEC6aOsGZU_Q2wnxVQq34B__t4x4LFw-sptM8', //仅为示例,并非真实的资源
                    success: (res) => {
                        if (res.statusCode === 200) {
                            // 保存
                            uni.saveFile({
                                tempFilePath: res.tempFilePath,
                                success: (res) => {
                                    // 文件对象
                                    plus.io.resolveLocalFileSystemURL(res.savedFilePath,
                                        (entry) => {
                                            console.log(res.savedFilePath);
                                            console.log(entry.toLocalURL());
                                            // 传入图片本地路径
                                            facebookModule.facebookShareImage({
                                                    'share_image': entry.toLocalURL()
                                                },
                                                (ret) => {
                                                    modal.toast({
                                                        message: ret,
                                                        duration: 1.5
                                                    });
                                                })
                                        })
                                },
                                fail: () => {
                                    uni.showToast({
                                        icon: 'none',
                                        title: "保存失败"
                                    })
                                }
                            })
                        }
                    }
                })
            }
        }    
    }
iOS特殊配置:

1、配置白名单,配置之后可以跳转app分享

2、配置urlschemes,不配置会闪退,manifest.json -> 源码视图 ->iOS

/* ios打包配置 */
"ios" : {
    // 白名单
    "urlschemewhitelist" : "fbapi,fbauth,fb-messenger-api,fb-messenger-share-api,fbauth2,fbshareextension",
    "urltypes" : "fb381861594101173"
},

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件将采集Facebook的登录信息,用于第三方登录的授权使用。参考其官方网站 https://developer.facebook.com

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问