博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
React-Native的微信SDK辅助包,支持微信登录、微信分享、微信支付
阅读量:4086 次
发布时间:2019-05-25

本文共 1816 字,大约阅读时间需要 6 分钟。

微信SDK集成示例,现已完成微信授权登录,之后将陆续包装分享等其他功能。http://www.cnblogs.com/suxun/p/5223893.html

如何安装

1. 下载包文件

$ npm i react-native-wechat-ios

2. 链接库文件到你的项目中

参考 

给RCTWeChat添加头文件搜索路径:$(SRCROOT)/../../react-native/React,并选择recursive
因为需要在 AppDelegate.m 文件中导入 RCTWeChat.h,所以需要在你的项目中添加一个头文件搜索路径:

$(SRCROOT)/../node_modules/react-native-wechat-ios/RCTWeChat,并选择recursive

根据微信SDK要求需要添加以下库文件
  • [x] SystemConfiguration.framework
  • [x] libz.dylib
  • [x] libsqlite3.0.dylib
  • [x] libc++.dylib
  • [x] CoreTelephony.framework

Xcode7 可能找不到*.dylib库,解决方法参考这里 

如何使用

1. 重写AppDelegate的handleOpenURL和openURL方法:

需要导入RCTWeChat.h

#import "RCTWeChat.h"
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url { return [[RCTWeChat shareInstance] handleOpenURL: url]; } - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation { return [[RCTWeChat shareInstance] handleOpenURL: url]; }

2. 订阅finishedAuth事件获取授权结果

授权成功后由Native端触发该事件,通知React Native端。

import {NativeAppEventEmitter} from 'react-native'; NativeAppEventEmitter.addListener( 'finishedAuth', (response) => AlertIOS.alert(JSON.stringify(response)) );
返回值(response):
  • response.code
  • response.state
  • response.errCode

3. 发起授权

import WeChat from 'react-native-wechat-ios';let state = '1311231'; WeChat.sendAuthRequest(state, (res) => { });

已完成的方法

  • registerApp 向微信注册应用ID
// 向微信注册应用IDWeChat.registerApp('你的微信应用ID', (res) => { alert(res); // true or false });
  • isWXAppInstalled 检测是否已经安装微信客户端
WeChat.isWXAppInstalled((res) => { alert('isWXAppInstalled: '+res); // true or false });
  • sendAuthRequest 发起授权请求
let state = '1311231'; WeChat.sendAuthRequest(state, (res) => { });

Example

记得要将 AppDelegate.m 文件中的IP换成自己的:

jsCodeLocation = [NSURL URLWithString:@"http://172.16.5.70:8081/index.ios.bundle?platform=ios&dev=true"];
你可能感兴趣的文章
【经验总结】如何找方向相关(计算机)的论文
查看>>
计算机论文查找
查看>>
计算机方向学术入门经验
查看>>
大牛博士是如何进行文献检索和阅读(好习惯受益终生)
查看>>
【转】台湾教授-如何阅读科研论文
查看>>
《如何写好科研论文》
查看>>
最大长方形 (Maximum Submatrix & Largest Rectangle)(涵盖各种求最大矩形题目)
查看>>
强连通分量之Kosaraju算法
查看>>
动态规划法(六)鸡蛋掉落问题(一)
查看>>
LeetCode 887.鸡蛋掉落(C++)
查看>>
Dijkstra‘s algorithm (C++)
查看>>
奇异值分解(SVD)的原理详解及推导
查看>>
算法数据结构 思维导图学习系列(1)- 数据结构 8种数据结构 数组(Array)链表(Linked List)队列(Queue)栈(Stack)树(Tree)散列表(Hash)堆(Heap)图
查看>>
求LCA最近公共祖先的离线Tarjan算法_C++
查看>>
BFS广搜+贪心 leetcode 1293. 网格中的最短路径
查看>>
有向无环图(DAG)的最短路径问题(拓扑排序)
查看>>
图——基本的图算法(四)关键路径
查看>>
树中所有点距离之和
查看>>
Leetcode 834. 树中距离之和 C++
查看>>
【机器学习】机器学习系统SysML 阅读表
查看>>