flutter 的 fluwx插件 ios配置调起微信

一、打开苹果开发者后台

请添加图片描述

找到对应的bundleId,点进去,勾选Associated Domains

请添加图片描述

二、准备apple-app-site-association文件,注意:文件不能有任何后缀,包括.json

文件内容如下

{
    "applinks": {
        "apps": [],
        "details": [
            {
                "appID": "teamID.应用BundId",
                "paths": [ "/app/*" ]
            }
        ]
    }
}

其中teamID在苹果账号中查找https://developer.apple.com/account

请添加图片描述

apple-app-site-association文件文件放的位置网上有很多文章说明,这里不做赘述

三、Xcode配置

1、设置Associated Domains请添加图片描述

将域名写入 Domains,格式如下applinks:你的域名,不需要https

请添加图片描述

2、Xcode Info ——> URL Types 展开点击加号

Identifier写入 weixin
URL Schemes写入微信开放平台移动应用中绑定的appID

3、Xcode Info ——> Custom IOS Target Properties ——> LSApplicationQueriesSchemes张开添加item项

 添加value为weixin的项
 添加value为wechat的项
 添加value为weixinULAPI的项

4、Xcode ——> Target ——> Build Settings 搜索Other Linker Flags 点击加号

添加 -ObjC-all_load

5、AppDelegate.m 或者 SceneDelegate.h 文件(重要‼️)

引入#import <WXApi.h>

  • 首先,微信唤起App,App一定会收到系统回调。请确认系统回调是Scheme回调还是Universal Links回调。
  • 如果是Scheme回调,请检查是否走了UISceneDelegate(XCode11构建的项目),或是UIApplicationDelegate。它们的回调方法分别是
 - (void)scene:(UIScene *)scene openURLContexts:(NSSetUIOpenURLContext *> *)URLContexts;

 - (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionaryUIApplicationOpenURLOptionsKey, id> *)options;
  • 如果是Universal Links回调,同样也检查是否走了UISceneDelegate(XCode11构建的项目),或是UIApplicationDelegate。它们的回调方法分别是
- (void)scene:(UIScene *)scene continueUserActivity:(NSUserActivity *)userActivity

- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void(^)(NSArrayidUIUserActivityRest
oring>> * __nullable restorableObjects))restorationHandler
  • 因为考虑兼容旧版本微信,因此无论Scheme或Universal Links回调都必须处理。 在重写回调方法后,需要分别调用WXApi的handleOpenUrl和handleOpenUniversalLink方法
    示例:
- (voidscene:(UIScene *)scene continueUserActivity:(NSUserActivity *)userActivity {
        return [WXApi handleOpenUniversalLink:userActivity delegate:self


- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:void(^)(NSArrayidUIUserActivityRest
oring>> * __nullable restorableObjects))restorationHandler {
return [WXApi handleOpenUniversalLink:userActivity delegate:self];

四、微信开放平台配置

1、进入开放平台添加应用

2、申请接口信息分享到朋友圈、发送给朋友、微信登录等接口信息

3、修改开发信息,IOS平台、IPad平台的Universal Links配置

五、flutter项目启动配置

universalLink与微信后台配置的相同

    await fluwx.registerWxApi(
        appId: "微信开放平台移动应用的AppId",
        doOnAndroid: true,
        doOnIOS: true,
        universalLink: "配置Xcode的域名(https://xxxx.com/)"

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是flutter集成fluwx实现微信登录的步骤和代码: 1. 首先在项目的 pubspec.yaml 文件中添加依赖: ```dart dependencies: fluwx: ^1.2.0 ``` 2. 在项目的 AndroidManifest.xml 文件中添加以下配置: ```xml <activity android:name=".wxapi.WXEntryActivity" android:exported="true" android:launchMode="singleTask" android:taskAffinity="" android:theme="@android:style/Theme.Translucent.NoTitleBar" /> ``` 3. 在项目的 Info.plist 文件中添加以下配置: ```xml <key>CFBundleURLTypes</key> <array> <dict> <key>CFBundleTypeRole</key> <string>Editor</string> <key>CFBundleURLName</key> <string>weixin</string> <key>CFBundleURLSchemes</key> <array> <string>你的AppID</string> </array> </dict> </array> <key>LSApplicationQueriesSchemes</key> <array> <string>weixin</string> </array> ``` 4. 在你的代码中引入 fluwx 包: ```dart import 'package:fluwx/fluwx.dart' as fluwx; ``` 5. 在你的代码中注册 fluwx: ```dart fluwx.registerWxApi( appId: "你的AppID", universalLink: "你的Universal Link", ); ``` 6. 在你的代码中实现微信登录: ```dart // 检查是否安装微信 bool isInstalled = await fluwx.isWeChatInstalled(); if (!isInstalled) { // 提示用户安装微信 return; } // 发送微信登录请求 fluwx.sendWeChatAuth( scope: "snsapi_userinfo", // 授权作用域 state: "wechat_login", // 自定义状态值 ).then((response) { // 处理登录结果 if (response.errCode == fluwx.WeChatSDK.ERR_OK) { // 登录成功,获取用户信息 String code = response.code; fluwx .getWeChatUserInfo( code: code, ) .then((userInfo) { // 处理用户信息 }); } else { // 登录失败 } }); ``` 以上就是使用 fluwx 实现微信登录的全部步骤和代码。需要注意的是,你需要将代码中的 "你的AppID" 和 "你的Universal Link" 替换为你在微信开放平台上注册的应用的实际值。同时,你还需要在微信开放平台上配置你的应用,以便 fluwx 能够正确地与微信进行交互。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值