提交 f6ff1eaa authored 作者: JarvanMo's avatar JarvanMo

sdk底层更新:ios->1.8.4,android->5.3.6;kotlin->1.3.21

上级 f19d5c62
## 0.0.7
## 0.5.7
* 修复问题43。
## 0.5.6
......
......@@ -2,14 +2,14 @@ group 'com.jarvan.fluwx'
version '1.0-SNAPSHOT'
buildscript {
ext.kotlin_version = '1.3.11'
ext.kotlin_version = '1.3.21'
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.3.0'
classpath 'com.android.tools.build:gradle:3.3.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
......@@ -41,9 +41,9 @@ android {
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
api 'com.tencent.mm.opensdk:wechat-sdk-android-with-mta:5.1.6'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.0.0'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.0.0'
api 'com.tencent.mm.opensdk:wechat-sdk-android-with-mta:5.3.1'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.1.1'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.1.1'
implementation 'top.zibin:Luban:1.1.8'
implementation 'com.squareup.okhttp3:okhttp:3.11.0'
}
package com.jarvan.fluwxexample
import android.os.Bundle
import com.jarvan.fluwx.handler.WXAPiHandler
import io.flutter.app.FlutterActivity
......
buildscript {
ext.kotlin_version = '1.3.20'
ext.kotlin_version = '1.3.21'
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.3.0'
classpath 'com.android.tools.build:gradle:3.3.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
......
......@@ -9,6 +9,7 @@
#import <Foundation/Foundation.h>
#import "WXApiObject.h"
NS_ASSUME_NONNULL_BEGIN
#pragma mark - WXApiDelegate
/*! @brief 接收并处理来自微信终端程序的事件消息
......@@ -25,7 +26,7 @@
* 可能收到的请求有GetMessageFromWXReq、ShowMessageFromWXReq等。
* @param req 具体请求内容,是自动释放的
*/
-(void) onReq:(BaseReq*)req;
- (void)onReq:(BaseReq*)req;
......@@ -35,7 +36,7 @@
* 可能收到的处理结果有SendMessageToWXResp、SendAuthResp等。
* @param resp具体的回应内容,是自动释放的
*/
-(void) onResp:(BaseResp*)resp;
- (void)onResp:(BaseResp*)resp;
@end
......@@ -43,7 +44,7 @@
@protocol WXApiLogDelegate <NSObject>
-(void) onLog:(NSString*)log logLevel:(WXLogLevel)level;
- (void)onLog:(NSString*)log logLevel:(WXLogLevel)level;
@end
......@@ -64,7 +65,7 @@
* @param typeFlag 应用支持打开的文件类型
* @return 成功返回YES,失败返回NO。
*/
+(BOOL) registerApp:(NSString *)appid;
+ (BOOL)registerApp:(NSString *)appid;
/*! @brief WXApi的成员函数,向微信终端程序注册第三方应用。
*
......@@ -75,7 +76,7 @@
* @param isEnableMTA 是否支持MTA数据上报
* @return 成功返回YES,失败返回NO。
*/
+(BOOL) registerApp:(NSString *)appid enableMTA:(BOOL)isEnableMTA;
+ (BOOL)registerApp:(NSString *)appid enableMTA:(BOOL)isEnableMTA;
/*! @brief WXApi的成员函数,向微信终端程序注册应用支持打开的文件类型。
......@@ -84,7 +85,7 @@
* @see registerApp
* @param typeFlag 应用支持打开的数据类型, enAppSupportContentFlag枚举类型 “|” 操作后结果
*/
+(void) registerAppSupportContentFlag:(UInt64)typeFlag;
+ (void)registerAppSupportContentFlag:(UInt64)typeFlag;
......@@ -95,7 +96,7 @@
* @param delegate WXApiDelegate对象,用来接收微信触发的消息。
* @return 成功返回YES,失败返回NO。
*/
+(BOOL) handleOpenURL:(NSURL *) url delegate:(id<WXApiDelegate>) delegate;
+ (BOOL)handleOpenURL:(NSURL *)url delegate:(nullable id<WXApiDelegate>)delegate;
......@@ -103,7 +104,7 @@
*
* @return 微信已安装返回YES,未安装返回NO。
*/
+(BOOL) isWXAppInstalled;
+ (BOOL)isWXAppInstalled;
......@@ -111,7 +112,7 @@
*
* @return 支持返回YES,不支持返回NO。
*/
+(BOOL) isWXAppSupportApi;
+ (BOOL)isWXAppSupportApi;
......@@ -119,7 +120,7 @@
*
* @return 微信的安装地址字符串。
*/
+(NSString *) getWXAppInstallUrl;
+ (NSString *)getWXAppInstallUrl;
......@@ -127,7 +128,7 @@
*
* @return 返回当前微信SDK的版本号
*/
+(NSString *) getApiVersion;
+ (NSString *)getApiVersion;
......@@ -135,7 +136,7 @@
*
* @return 成功返回YES,失败返回NO。
*/
+(BOOL) openWXApp;
+ (BOOL)openWXApp;
......@@ -146,7 +147,7 @@
* @param req 具体的发送请求,在调用函数后,请自己释放。
* @return 成功返回YES,失败返回NO。
*/
+(BOOL) sendReq:(BaseReq*)req;
+ (BOOL)sendReq:(BaseReq*)req;
/*! @brief 发送Auth请求到微信,支持用户没安装微信,等待微信返回onResp
*
......@@ -156,7 +157,7 @@
* @param delegate WXApiDelegate对象,用来接收微信触发的消息。
* @return 成功返回YES,失败返回NO。
*/
+(BOOL) sendAuthReq:(SendAuthReq*)req viewController:(UIViewController*)viewController delegate:(id<WXApiDelegate>)delegate;
+ (BOOL)sendAuthReq:(SendAuthReq*)req viewController:(UIViewController*)viewController delegate:(nullable id<WXApiDelegate>)delegate;
/*! @brief 收到微信onReq的请求,发送对应的应答给微信,并切换到微信界面
......@@ -166,7 +167,7 @@
* @param resp 具体的应答内容,调用函数后,请自己释放
* @return 成功返回YES,失败返回NO。
*/
+(BOOL) sendResp:(BaseResp*)resp;
+ (BOOL)sendResp:(BaseResp*)resp;
/*! @brief WXApi的成员函数,接受微信的log信息。byBlock
......@@ -176,7 +177,7 @@
* @param level 打印log的级别
* @param logBlock 打印log的回调block
*/
+(void) startLogByLevel:(WXLogLevel)level logBlock:(WXLogBolock)logBlock;
+ (void)startLogByLevel:(WXLogLevel)level logBlock:(WXLogBolock)logBlock;
/*! @brief WXApi的成员函数,接受微信的log信息。byDelegate
注意1:sdk会弱引用这个delegate,这里可加任意对象为代理,不需要与WXApiDelegate同一个对象
......@@ -191,3 +192,5 @@
*/
+ (void)stopLog;
@end
NS_ASSUME_NONNULL_END
......@@ -8,6 +8,9 @@
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
/*! @brief 错误码
*
*/
......@@ -42,7 +45,7 @@ enum WXAPISupport {
/*! @brief 跳转profile类型
*
*/
enum WXBizProfileType{
enum WXBizProfileType {
WXBizProfileType_Normal = 0, //**< 普通公众号 */
WXBizProfileType_Device = 1, //**< 硬件公众号 */
};
......@@ -50,7 +53,7 @@ enum WXBizProfileType{
/*! @brief 分享小程序类型
*
*/
typedef NS_ENUM(NSUInteger, WXMiniProgramType){
typedef NS_ENUM(NSUInteger, WXMiniProgramType) {
WXMiniProgramTypeRelease = 0, //**< 正式版 */
WXMiniProgramTypeTest = 1, //**< 开发版 */
WXMiniProgramTypePreview = 2, //**< 体验版 */
......@@ -68,8 +71,7 @@ enum WXMPWebviewType {
/*! @brief 应用支持接收微信的文件类型
*
*/
typedef NS_ENUM(UInt64, enAppSupportContentFlag)
{
typedef NS_ENUM(UInt64, enAppSupportContentFlag) {
MMAPP_SUPPORT_NOCONTENT = 0x0,
MMAPP_SUPPORT_TEXT = 0x1,
MMAPP_SUPPORT_PICTURE = 0x2,
......@@ -91,7 +93,7 @@ typedef NS_ENUM(UInt64, enAppSupportContentFlag)
/*! @brief log的级别
*
*/
typedef NS_ENUM(NSInteger,WXLogLevel){
typedef NS_ENUM(NSInteger,WXLogLevel) {
WXLogLevelNormal = 0, // 打印日常的日志
WXLogLevelDetail = 1, // 打印详细的日志
};
......@@ -100,7 +102,7 @@ typedef NS_ENUM(NSInteger,WXLogLevel){
/*! @brief 打印回调的block
*
*/
typedef void(^WXLogBolock)(NSString * log);
typedef void(^WXLogBolock)(NSString *log);
#pragma mark - BaseReq
/*! @brief 该类为微信终端SDK所有请求类的基类
......@@ -111,7 +113,7 @@ typedef void(^WXLogBolock)(NSString * log);
/** 请求类型 */
@property (nonatomic, assign) int type;
/** 由用户微信号和AppID组成的唯一标识,发送请求时第三方程序必须填写,用于校验微信用户是否换号登录*/
@property (nonatomic, retain) NSString* openID;
@property (nonatomic, copy) NSString *openID;
@end
......@@ -125,7 +127,7 @@ typedef void(^WXLogBolock)(NSString * log);
/** 错误码 */
@property (nonatomic, assign) int errCode;
/** 错误提示字符串 */
@property (nonatomic, retain) NSString *errStr;
@property (nonatomic, copy) NSString *errStr;
/** 响应类型 */
@property (nonatomic, assign) int type;
......@@ -146,17 +148,17 @@ typedef void(^WXLogBolock)(NSString * log);
@interface PayReq : BaseReq
/** 商家向财付通申请的商家id */
@property (nonatomic, retain) NSString *partnerId;
@property (nonatomic, copy) NSString *partnerId;
/** 预支付订单 */
@property (nonatomic, retain) NSString *prepayId;
@property (nonatomic, copy) NSString *prepayId;
/** 随机串,防重发 */
@property (nonatomic, retain) NSString *nonceStr;
@property (nonatomic, copy) NSString *nonceStr;
/** 时间戳,防重发 */
@property (nonatomic, assign) UInt32 timeStamp;
/** 商家根据财付通文档填写的数据和签名 */
@property (nonatomic, retain) NSString *package;
@property (nonatomic, copy) NSString *package;
/** 商家根据微信开放平台文档对数据做的签名 */
@property (nonatomic, retain) NSString *sign;
@property (nonatomic, copy) NSString *sign;
@end
......@@ -169,7 +171,7 @@ typedef void(^WXLogBolock)(NSString * log);
@interface PayResp : BaseResp
/** 财付通返回给商家的信息 */
@property (nonatomic, retain) NSString *returnKey;
@property (nonatomic, copy) NSString *returnKey;
@end
......@@ -207,15 +209,13 @@ typedef void(^WXLogBolock)(NSString * log);
* @see SendAuthResp
* @note scope字符串长度不能超过1K
*/
@property (nonatomic, retain) NSString* scope;
@property (nonatomic, copy) NSString *scope;
/** 第三方程序本身用来标识其请求的唯一性,最后跳转回第三方程序时,由微信终端回传。
* @note state字符串长度不能超过1K
*/
@property (nonatomic, retain) NSString* state;
@property (nonatomic, copy) NSString *state;
@end
#pragma mark - SendAuthResp
/*! @brief 微信处理完第三方程序的认证和权限申请后向第三方程序回送的处理结果。
*
......@@ -224,13 +224,13 @@ typedef void(^WXLogBolock)(NSString * log);
* @see onResp
*/
@interface SendAuthResp : BaseResp
@property (nonatomic, retain) NSString* code;
@property (nonatomic, copy, nullable) NSString *code;
/** 第三方程序发送时用来标识其请求的唯一性的标志,由第三方程序调用sendReq时传入,由微信终端回传
* @note state字符串长度不能超过1K
*/
@property (nonatomic, retain) NSString* state;
@property (nonatomic, retain) NSString* lang;
@property (nonatomic, retain) NSString* country;
@property (nonatomic, copy, nullable) NSString *state;
@property (nonatomic, copy, nullable) NSString *lang;
@property (nonatomic, copy, nullable) NSString *country;
@end
......@@ -246,31 +246,31 @@ typedef void(^WXLogBolock)(NSString * log);
/** 发送消息的文本内容
* @note 文本长度必须大于0且小于10K
*/
@property (nonatomic, retain) NSString* text;
@property (nonatomic, copy) NSString *text;
/** 发送消息的多媒体内容
* @see WXMediaMessage
*/
@property (nonatomic, retain) WXMediaMessage* message;
@property (nonatomic, strong) WXMediaMessage *message;
/** 发送消息的类型,包括文本消息和多媒体消息两种,两者只能选择其一,不能同时发送文本和多媒体消息 */
@property (nonatomic, assign) BOOL bText;
/** 发送的目标场景,可以选择发送到会话(WXSceneSession)或者朋友圈(WXSceneTimeline)。 默认发送到会话。
* @see WXScene
*/
@property (nonatomic, assign) int scene;
/** 指定发送消息的人,WXSceneSpecifiedSession时有效 */
@property (nonatomic, retain) NSString* toUserOpenId;
/** 指定发送消息的人
* @note WXSceneSpecifiedSession时有效
*/
@property (nonatomic, copy, nullable) NSString *toUserOpenId;
@end
#pragma mark - SendMessageToWXResp
/*! @brief 微信终端向第三方程序返回的SendMessageToWXReq处理结果。
*
* 第三方程序向微信终端发送SendMessageToWXReq后,微信发送回来的处理结果,该结果用SendMessageToWXResp表示。
*/
@interface SendMessageToWXResp : BaseResp
@property(nonatomic, retain) NSString* lang;
@property(nonatomic, retain) NSString* country;
@property(nonatomic, copy) NSString *lang;
@property(nonatomic, copy) NSString *country;
@end
......@@ -282,8 +282,8 @@ typedef void(^WXLogBolock)(NSString * log);
* 需要第三方程序调用sendResp返回一个GetMessageFromWXResp消息结构体。
*/
@interface GetMessageFromWXReq : BaseReq
@property (nonatomic, retain) NSString* lang;
@property (nonatomic, retain) NSString* country;
@property (nonatomic, strong) NSString *lang;
@property (nonatomic, strong) NSString *country;
@end
......@@ -297,11 +297,11 @@ typedef void(^WXLogBolock)(NSString * log);
/** 向微信终端提供的文本内容
@note 文本长度必须大于0且小于10K
*/
@property (nonatomic, retain) NSString* text;
@property (nonatomic, strong) NSString *text;
/** 向微信终端提供的多媒体内容。
* @see WXMediaMessage
*/
@property (nonatomic, retain) WXMediaMessage* message;
@property (nonatomic, strong) WXMediaMessage *message;
/** 向微信终端提供内容的消息类型,包括文本消息和多媒体消息两种,两者只能选择其一,不能同时发送文本和多媒体消息 */
@property (nonatomic, assign) BOOL bText;
@end
......@@ -318,9 +318,9 @@ typedef void(^WXLogBolock)(NSString * log);
/** 微信终端向第三方程序发送的要求第三方程序处理的多媒体内容
* @see WXMediaMessage
*/
@property (nonatomic, retain) WXMediaMessage* message;
@property (nonatomic, retain) NSString* lang;
@property (nonatomic, retain) NSString* country;
@property (nonatomic, strong) WXMediaMessage *message;
@property (nonatomic, copy) NSString *lang;
@property (nonatomic, copy) NSString *country;
@end
......@@ -335,18 +335,19 @@ typedef void(^WXLogBolock)(NSString * log);
@end
#pragma mark - LaunchFromWXReq
/*! @brief 微信终端打开第三方程序携带的消息结构体
*
* 微信向第三方发送的结构体,第三方不需要返回
*/
@interface LaunchFromWXReq : BaseReq
@property (nonatomic, retain) WXMediaMessage* message;
@property (nonatomic, retain) NSString* lang;
@property (nonatomic, retain) NSString* country;
@property (nonatomic, strong) WXMediaMessage *message;
@property (nonatomic, copy) NSString *lang;
@property (nonatomic, copy) NSString *country;
@end
#pragma mark - OpenTempSessionReq
/* ! @brief 第三方通知微信,打开临时会话
*
......@@ -356,11 +357,11 @@ typedef void(^WXLogBolock)(NSString * log);
/** 需要打开的用户名
* @attention 长度不能超过512字节
*/
@property (nonatomic, retain) NSString* username;
@property (nonatomic, copy) NSString *username;
/** 开发者自定义参数,拉起临时会话后会发给开发者后台,可以用于识别场景
* @attention 长度不能超过32位
*/
@property (nonatomic, retain) NSString* sessionFrom;
@property (nonatomic, copy) NSString *sessionFrom;
@end
#pragma mark - OpenTempSessionResp
......@@ -372,6 +373,8 @@ typedef void(^WXLogBolock)(NSString * log);
@end
#pragma mark - OpenWebviewReq
/* ! @brief 第三方通知微信启动内部浏览器,打开指定网页
*
......@@ -381,7 +384,7 @@ typedef void(^WXLogBolock)(NSString * log);
/** 需要打开的网页对应的Url
* @attention 长度不能超过1024
*/
@property(nonatomic,retain)NSString* url;
@property(nonatomic, copy) NSString *url;
@end
......@@ -395,6 +398,7 @@ typedef void(^WXLogBolock)(NSString * log);
@end
#pragma mark - WXOpenBusinessWebViewReq
/*! @brief 第三方通知微信启动内部浏览器,打开指定业务的网页
*
......@@ -410,7 +414,7 @@ typedef void(^WXLogBolock)(NSString * log);
/** 网页业务参数
* @attention
*/
@property (nonatomic, retain) NSDictionary *queryInfoDic;
@property (nonatomic, strong, nullable) NSDictionary *queryInfoDic;
@end
......@@ -423,7 +427,7 @@ typedef void(^WXLogBolock)(NSString * log);
/** 第三方程序自定义简单数据,微信终端会回传给第三方程序处理
* @attention 长度不能超过2k
*/
@property (nonatomic, retain) NSString *result;
@property (nonatomic, copy) NSString *result;
/** 网页业务类型
* @attention
......@@ -451,6 +455,8 @@ typedef void(^WXLogBolock)(NSString * log);
@end
#pragma mark - JumpToBizProfileReq
/* ! @brief 第三方通知微信,打开指定微信号profile页面
*
......@@ -460,11 +466,11 @@ typedef void(^WXLogBolock)(NSString * log);
/** 跳转到该公众号的profile
* @attention 长度不能超过512字节
*/
@property (nonatomic, retain) NSString* username;
@property (nonatomic, copy) NSString *username;
/** 如果用户加了该公众号为好友,extMsg会上传到服务器
* @attention 长度不能超过1024字节
*/
@property (nonatomic, retain) NSString* extMsg;
@property (nonatomic, copy, nullable) NSString *extMsg;
/**
* 跳转的公众号类型
* @see WXBizProfileType
......@@ -486,11 +492,11 @@ typedef void(^WXLogBolock)(NSString * log);
/** 跳转到该公众号的profile网页版
* @attention 长度不能超过512字节
*/
@property(nonatomic, retain) NSString* tousrname;
@property(nonatomic, copy) NSString *tousrname;
/** 如果用户加了该公众号为好友,extMsg会上传到服务器
* @attention 长度不能超过1024字节
*/
@property(nonatomic, retain) NSString* extMsg;
@property(nonatomic, copy, nullable) NSString *extMsg;
@end
......@@ -500,23 +506,23 @@ typedef void(^WXLogBolock)(NSString * log);
/** 卡id
* @attention 长度不能超过1024字节
*/
@property (nonatomic,retain) NSString* cardId;
@property (nonatomic, copy) NSString *cardId;
/** ext信息
* @attention 长度不能超过2024字节
*/
@property (nonatomic,retain) NSString* extMsg;
@property (nonatomic, copy, nullable) NSString *extMsg;
/**
* @attention 卡的状态,req不需要填。resp:0为未添加,1为已添加。
*/
@property (nonatomic,assign) UInt32 cardState;
@property (nonatomic, assign) UInt32 cardState;
/**
* @attention req不需要填,chooseCard返回的。
*/
@property (nonatomic,retain) NSString* encryptCode;
@property (nonatomic, copy) NSString *encryptCode;
/**
* @attention req不需要填,chooseCard返回的。
*/
@property (nonatomic,retain) NSString* appID;
@property (nonatomic, copy) NSString *appID;
@end;
#pragma mark - WXInvoiceItem
......@@ -525,23 +531,23 @@ typedef void(^WXLogBolock)(NSString * log);
/** 卡id
* @attention 长度不能超过1024字节
*/
@property (nonatomic,retain) NSString* cardId;
@property (nonatomic, copy) NSString *cardId;
/** ext信息
* @attention 长度不能超过2024字节
*/
@property (nonatomic,retain) NSString* extMsg;
@property (nonatomic, copy, nullable) NSString *extMsg;
/**
* @attention 卡的状态,req不需要填。resp:0为未添加,1为已添加。
*/
@property (nonatomic,assign) UInt32 cardState;
@property (nonatomic, assign) UInt32 cardState;
/**
* @attention req不需要填,chooseCard返回的。
*/
@property (nonatomic,retain) NSString* encryptCode;
@property (nonatomic, copy) NSString *encryptCode;
/**
* @attention req不需要填,chooseCard返回的。
*/
@property (nonatomic,retain) NSString* appID;
@property (nonatomic, copy) NSString *appID;
@end
......@@ -554,7 +560,7 @@ typedef void(^WXLogBolock)(NSString * log);
/** 卡列表
* @attention 个数不能超过40个 类型WXCardItem
*/
@property (nonatomic,retain) NSArray* cardAry;
@property (nonatomic, strong) NSArray *cardAry;
@end
......@@ -568,7 +574,7 @@ typedef void(^WXLogBolock)(NSString * log);
/** 卡列表
* @attention 个数不能超过40个 类型WXCardItem
*/
@property (nonatomic,retain) NSArray* cardAry;
@property (nonatomic, strong) NSArray *cardAry;
@end
#pragma mark - WXChooseCardReq
......@@ -577,15 +583,15 @@ typedef void(^WXLogBolock)(NSString * log);
*/
@interface WXChooseCardReq : BaseReq
@property(nonatomic, strong) NSString *appID;
@property(nonatomic, assign) UInt32 shopID;
@property(nonatomic, assign) UInt32 canMultiSelect;
@property(nonatomic, strong) NSString *cardType;
@property(nonatomic, strong) NSString *cardTpID;
@property(nonatomic, strong) NSString *signType;
@property(nonatomic, strong) NSString *cardSign;
@property(nonatomic, assign) UInt32 timeStamp;
@property(nonatomic, strong) NSString *nonceStr;
@property (nonatomic, copy) NSString *appID;
@property (nonatomic, assign) UInt32 shopID;
@property (nonatomic, assign) UInt32 canMultiSelect;
@property (nonatomic, copy) NSString *cardType;
@property (nonatomic, copy) NSString *cardTpID;
@property (nonatomic, copy) NSString *signType;
@property (nonatomic, copy) NSString *cardSign;
@property (nonatomic, assign) UInt32 timeStamp;
@property (nonatomic, copy) NSString *nonceStr;
@end
......@@ -595,7 +601,7 @@ typedef void(^WXLogBolock)(NSString * log);
*/
@interface WXChooseCardResp : BaseResp
@property (nonatomic,retain) NSArray* cardAry;
@property (nonatomic, strong ) NSArray* cardAry;
@end
......@@ -604,12 +610,12 @@ typedef void(^WXLogBolock)(NSString * log);
*
*/
@interface WXChooseInvoiceReq : BaseReq
@property (nonatomic, strong) NSString *appID;
@property (nonatomic, copy) NSString *appID;
@property (nonatomic, assign) UInt32 shopID;
@property (nonatomic, strong) NSString *signType;
@property (nonatomic, strong) NSString *cardSign;
@property (nonatomic, copy) NSString *signType;
@property (nonatomic, copy) NSString *cardSign;
@property (nonatomic, assign) UInt32 timeStamp;
@property (nonatomic, strong) NSString *nonceStr;
@property (nonatomic, copy) NSString *nonceStr;
@end
#pragma mark - WXChooseInvoiceResp
......@@ -623,18 +629,18 @@ typedef void(^WXLogBolock)(NSString * log);
#pragma mark - WXSubscriptionReq
@interface WXSubscribeMsgReq : BaseReq
@property (nonatomic, assign) UInt32 scene;
@property (nonatomic, strong) NSString * templateId;
@property (nonatomic, strong) NSString * reserved;
@property (nonatomic, copy) NSString *templateId;
@property (nonatomic, copy, nullable) NSString *reserved;
@end
#pragma mark - WXSubscriptionReq
@interface WXSubscribeMsgResp : BaseResp
@property (nonatomic, strong) NSString *templateId;
@property (nonatomic, copy) NSString *templateId;
@property (nonatomic, assign) UInt32 scene;
@property (nonatomic, strong) NSString *action;
@property (nonatomic, strong) NSString * reserved;
@property (nonatomic, strong) NSString * openId;
@property (nonatomic, copy) NSString *action;
@property (nonatomic, copy) NSString *reserved;
@property (nonatomic, copy, nullable) NSString *openId;
@end
......@@ -643,22 +649,22 @@ typedef void(^WXLogBolock)(NSString * log);
*
*/
@interface WXSubscribeMiniProgramMsgReq : BaseReq
@property (nonatomic, strong) NSString * miniProgramAppid;
@property (nonatomic, copy) NSString *miniProgramAppid;
@end
#pragma mark - WXSubscriptionReq
@interface WXSubscribeMiniProgramMsgResp : BaseResp
@property(nonatomic, strong) NSString *openId; // 小程序openid
@property(nonatomic, strong) NSString *unionId; // unionId
@property(nonatomic, strong) NSString *nickName; // 用户昵称
@property(nonatomic, copy) NSString *openId; // 小程序openid
@property(nonatomic, copy) NSString *unionId; // unionId
@property(nonatomic, copy) NSString *nickName; // 用户昵称
@end
#pragma mark - WXinvoiceAuthInsertReq
@interface WXInvoiceAuthInsertReq : BaseReq
@property (nonatomic, strong) NSString *urlString;
@property (nonatomic, copy) NSString *urlString;
@end
......@@ -666,41 +672,38 @@ typedef void(^WXLogBolock)(NSString * log);
@interface WXInvoiceAuthInsertResp : BaseResp
@property (nonatomic, strong) NSString * wxOrderId;
@property (nonatomic, copy) NSString *wxOrderId;
@end
#pragma mark - WXNontaxPayReq
@interface WXNontaxPayReq:BaseReq
@property (nonatomic, strong) NSString *urlString;
@property (nonatomic, copy) NSString *urlString;
@end
#pragma mark - WXNontaxPayResp
@interface WXNontaxPayResp : BaseResp
@property (nonatomic, strong) NSString *wxOrderId;
@property (nonatomic, copy) NSString *wxOrderId;
@end
#pragma mark - WXPayInsuranceReq
@interface WXPayInsuranceReq : BaseReq
@property (nonatomic, strong) NSString *urlString;
@property (nonatomic, copy) NSString *urlString;
@end
#pragma mark - WXPayInsuranceResp
@interface WXPayInsuranceResp : BaseResp
@property (nonatomic, strong) NSString *wxOrderId;
@property (nonatomic, copy) NSString *wxOrderId;
@end
#pragma mark - WXMediaMessage
#pragma mark - WXMediaMessage
/*! @brief 多媒体消息结构体
......@@ -709,40 +712,40 @@ typedef void(^WXLogBolock)(NSString * log);
*/
@interface WXMediaMessage : NSObject
+(WXMediaMessage *) message;
+ (WXMediaMessage *)message;
/** 标题
* @note 长度不能超过512字节
*/
@property (nonatomic, retain) NSString *title;
@property (nonatomic, copy) NSString *title;
/** 描述内容
* @note 长度不能超过1K
*/
@property (nonatomic, retain) NSString *description;
@property (nonatomic, copy) NSString *description;
/** 缩略图数据
* @note 大小不能超过32K
*/
@property (nonatomic, retain) NSData *thumbData;
@property (nonatomic, strong, nullable) NSData *thumbData;
/**
* @note 长度不能超过64字节
*/
@property (nonatomic, retain) NSString *mediaTagName;
@property (nonatomic, copy, nullable) NSString *mediaTagName;
/**
*
*/
@property (nonatomic, retain) NSString *messageExt;
@property (nonatomic, retain) NSString *messageAction;
@property (nonatomic, copy, nullable) NSString *messageExt;
@property (nonatomic, copy, nullable) NSString *messageAction;
/**
* 多媒体数据对象,可以为WXImageObject,WXMusicObject,WXVideoObject,WXWebpageObject等。
*/
@property (nonatomic, retain) id mediaObject;
@property (nonatomic, strong) id mediaObject;
/*! @brief 设置消息缩略图的方法
*
* @param image 缩略图
* @note 大小不能超过32K
* @note 大小不能超过64K
*/
- (void) setThumbImage:(UIImage *)image;
- (void)setThumbImage:(UIImage *)image;
@end
......@@ -760,12 +763,12 @@ typedef void(^WXLogBolock)(NSString * log);
*
* @note 返回的WXImageObject对象是自动释放的
*/
+(WXImageObject *) object;
+ (WXImageObject *)object;
/** 图片真实数据内容
* @note 大小不能超过10M
* @note 大小不能超过25M
*/
@property (nonatomic, retain) NSData *imageData;
@property (nonatomic, strong) NSData *imageData;
@end
......@@ -782,25 +785,25 @@ typedef void(^WXLogBolock)(NSString * log);
*
* @note 返回的WXMusicObject对象是自动释放的
*/
+(WXMusicObject *) object;
+ (WXMusicObject *)object;
/** 音乐网页的url地址
* @note 长度不能超过10K
*/
@property (nonatomic, retain) NSString *musicUrl;
@property (nonatomic, copy) NSString *musicUrl;
/** 音乐lowband网页的url地址
* @note 长度不能超过10K
*/
@property (nonatomic, retain) NSString *musicLowBandUrl;
@property (nonatomic, copy) NSString *musicLowBandUrl;
/** 音乐数据url地址
* @note 长度不能超过10K
*/
@property (nonatomic, retain) NSString *musicDataUrl;
@property (nonatomic, copy) NSString *musicDataUrl;
/**音乐lowband数据url地址
* @note 长度不能超过10K
*/
@property (nonatomic, retain) NSString *musicLowBandDataUrl;
@property (nonatomic, copy) NSString *musicLowBandDataUrl;
@end
......@@ -818,16 +821,16 @@ typedef void(^WXLogBolock)(NSString * log);
*
* @note 返回的WXVideoObject对象是自动释放的
*/
+(WXVideoObject *) object;
+ (WXVideoObject *)object;
/** 视频网页的url地址
* @note 长度不能超过10K
*/
@property (nonatomic, retain) NSString *videoUrl;
@property (nonatomic, copy) NSString *videoUrl;
/** 视频lowband网页的url地址
* @note 长度不能超过10K
*/
@property (nonatomic, retain) NSString *videoLowBandUrl;
@property (nonatomic, copy) NSString *videoLowBandUrl;
@end
......@@ -844,12 +847,12 @@ typedef void(^WXLogBolock)(NSString * log);
*
* @note 返回的WXWebpageObject对象是自动释放的
*/
+(WXWebpageObject *) object;
+ (WXWebpageObject *)object;
/** 网页的url地址
* @note 不能为空且长度不能超过10K
*/
@property (nonatomic, retain) NSString *webpageUrl;
@property (nonatomic, copy) NSString *webpageUrl;
@end
......@@ -868,20 +871,20 @@ typedef void(^WXLogBolock)(NSString * log);
*
* @note 返回的WXAppExtendObject对象是自动释放的
*/
+(WXAppExtendObject *) object;
+ (WXAppExtendObject *)object;
/** 若第三方程序不存在,微信终端会打开该url所指的App下载地址
* @note 长度不能超过10K
*/
@property (nonatomic, retain) NSString *url;
@property (nonatomic, copy) NSString *url;
/** 第三方程序自定义简单数据,微信终端会回传给第三方程序处理
* @note 长度不能超过2K
*/
@property (nonatomic, retain) NSString *extInfo;
@property (nonatomic, copy, nullable) NSString *extInfo;
/** App文件数据,该数据发送给微信好友,微信好友需要点击后下载数据,微信终端会回传给第三方程序处理
* @note 大小不能超过10M
*/
@property (nonatomic, retain) NSData *fileData;
@property (nonatomic, strong, nullable) NSData *fileData;
@end
......@@ -899,12 +902,12 @@ typedef void(^WXLogBolock)(NSString * log);
*
* @note 返回的WXEmoticonObject对象是自动释放的
*/
+(WXEmoticonObject *) object;
+ (WXEmoticonObject *)object;
/** 表情真实数据内容
* @note 大小不能超过10M
*/
@property (nonatomic, retain) NSData *emoticonData;
@property (nonatomic, strong) NSData *emoticonData;
@end
......@@ -921,17 +924,17 @@ typedef void(^WXLogBolock)(NSString * log);
*
* @note 返回的WXFileObject对象是自动释放的
*/
+(WXFileObject *) object;
+ (WXFileObject *)object;
/** 文件后缀名
* @note 长度不超过64字节
*/
@property (nonatomic, retain) NSString *fileExtension;
@property (nonatomic, copy) NSString *fileExtension;
/** 文件真实数据内容
* @note 大小不能超过10M
*/
@property (nonatomic, retain) NSData *fileData;
@property (nonatomic, strong) NSData *fileData;
@end
......@@ -948,7 +951,7 @@ typedef void(^WXLogBolock)(NSString * log);
*
* @note 返回的WXLocationObject对象是自动释放的
*/
+(WXLocationObject *) object;
+ (WXLocationObject *)object;
/** 地理位置信息
* @note 经纬度
......@@ -958,25 +961,62 @@ typedef void(^WXLogBolock)(NSString * log);
@end
#pragma mark - WXTextObject
/*! @brief 多媒体消息中包含的文本数据对象
*
* 微信终端和第三方程序之间传递消息中包含的文本数据对象。
* @see WXMediaMessage
*/
@interface WXTextObject : NSObject
/*! @brief 返回一个WXTextObject对象
*
* @note 返回的WXTextObject对象是自动释放的
*/
+ (WXTextObject *)object;
/** 地理位置信息
* @note 文本内容
*/
@property (nonatomic, copy) NSString *contentText;
@end
#pragma mark - WXMiniProgramObject
@interface WXMiniProgramObject : NSObject
/*! @brief WXMiniProgramObject对象
*
* @note 返回的WXMiniProgramObject对象是自动释放的
*/
+(WXMiniProgramObject *) object;
+ (WXMiniProgramObject *)object;
@property (nonatomic, strong) NSString *webpageUrl; //低版本网页链接
/** 低版本网页链接
* @attention 长度不能超过1024字节
*/
@property (nonatomic, copy) NSString *webpageUrl;
@property (nonatomic, strong) NSString *userName; //小程序username
/** 小程序username */
@property (nonatomic, copy) NSString *userName;
@property (nonatomic, strong) NSString *path; //小程序页面的路径
/** 小程序页面的路径
* @attention 不填默认拉起小程序首页
*/
@property (nonatomic, copy, nullable) NSString *path;
@property (nonatomic, strong) NSData *hdImageData; // 小程序新版本的预览图 128k
/** 小程序新版本的预览图
* @attention 大小不能超过128k
*/
@property (nonatomic, strong, nullable) NSData *hdImageData;
@property (nonatomic, assign) BOOL withShareTicket; //是否使用带 shareTicket 的转发
/** 是否使用带 shareTicket 的转发 */
@property (nonatomic, assign) BOOL withShareTicket;
@property (nonatomic, assign) WXMiniProgramType miniProgramType; // 分享小程序的版本(正式,开发,体验)
/** 分享小程序的版本
* @attention (正式,开发,体验)
*/
@property (nonatomic, assign) WXMiniProgramType miniProgramType;
@end
......@@ -988,12 +1028,25 @@ typedef void(^WXLogBolock)(NSString * log);
*/
@interface WXLaunchMiniProgramReq : BaseReq
+(WXLaunchMiniProgramReq *) object;
+ (WXLaunchMiniProgramReq *)object;
@property (nonatomic, strong) NSString *userName; //拉起的小程序的username
@property (nonatomic, strong) NSString *path; //拉起小程序页面的路径,不填默认拉起小程序首页
@property (nonatomic, assign) WXMiniProgramType miniProgramType; //拉起小程序的类型
/** 小程序username */
@property (nonatomic, copy) NSString *userName;
/** 小程序页面的路径
* @attention 不填默认拉起小程序首页
*/
@property (nonatomic, copy, nullable) NSString *path;
/** 分享小程序的版本
* @attention (正式,开发,体验)
*/
@property (nonatomic, assign) WXMiniProgramType miniProgramType;
/** ext信息
* @attention json格式
*/
@property (nonatomic, copy, nullable) NSString *extMsg;
@end
#pragma mark - WXLaunchMiniProgramResp
......@@ -1003,28 +1056,46 @@ typedef void(^WXLogBolock)(NSString * log);
*/
@interface WXLaunchMiniProgramResp : BaseResp
@property (nonatomic, retain) NSString *extMsg;
@property (nonatomic, copy, nullable) NSString *extMsg;
@end
#pragma mark - WXTextObject
/*! @brief 多媒体消息中包含的文本数据对象
#pragma mark - WXOpenBusinessViewReq
/*! @brief WXOpenBusinessViewReq对象, 可实现第三方通知微信启动,打开业务页面
*
* 微信终端和第三方程序之间传递消息中包含的文本数据对象。
* @see WXMediaMessage
* @note 返回的WXOpenBusinessViewReq对象是自动释放的
*/
@interface WXTextObject : NSObject
/*! @brief 返回一个WXTextObject对象
*
* @note 返回的WXTextObject对象是自动释放的
@interface WXOpenBusinessViewReq : BaseReq
+ (WXOpenBusinessViewReq *)object;
/** 业务类型
*/
+(WXTextObject *) object;
@property (nonatomic, copy) NSString *businessType;
/** 地理位置信息
* @note 文本内容
/** 业务参数
*/
@property (nonatomic, copy, nullable) NSString *query;
/** ext信息
* @note 选填,json格式
*/
@property (nonatomic, copy, nullable) NSString *extInfo;
@end
@interface WXOpenBusinessViewResp : BaseResp
/** 业务类型
*/
@property (nonatomic, copy) NSString *businessType;
/** 业务返回数据
*/
@property (nonatomic, retain) NSString *contentText;
@property (nonatomic, copy, nullable) NSString *extMsg;
@end
NS_ASSUME_NONNULL_END
......@@ -9,6 +9,8 @@
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
enum AuthErrCode {
WechatAuth_Err_Ok = 0, //Auth成功
WechatAuth_Err_NormalErr = -1, //普通错误
......@@ -23,7 +25,7 @@ enum AuthErrCode {
- (void)onAuthGotQrcode:(UIImage *)image; //得到二维码
- (void)onQrcodeScanned; //二维码被扫描
- (void)onAuthFinish:(int)errCode AuthCode:(NSString *)authCode; //成功登录
- (void)onAuthFinish:(int)errCode AuthCode:(nullable NSString *)authCode; //成功登录
@end
......@@ -32,7 +34,7 @@ enum AuthErrCode {
__weak id<WechatAuthAPIDelegate> _delegate;
}
@property(nonatomic, weak) id<WechatAuthAPIDelegate> delegate;
@property(nonatomic, weak, nullable) id<WechatAuthAPIDelegate> delegate;
@property(nonatomic, readonly) NSString *sdkVersion; //authSDK版本号
/*! @brief 发送登录请求,等待WechatAuthAPIDelegate回调
......@@ -49,10 +51,10 @@ enum AuthErrCode {
- (BOOL)Auth:(NSString *)appId
nonceStr:(NSString *)nonceStr
timeStamp:(NSString*)timeStamp
timeStamp:(NSString *)timeStamp
scope:(NSString *)scope
signature:(NSString *)signature
schemeData:(NSString *)schemeData;
schemeData:(nullable NSString *)schemeData;
/*! @brief 暂停登录请求
......@@ -62,3 +64,5 @@ enum AuthErrCode {
- (BOOL)StopAuth;
@end
NS_ASSUME_NONNULL_END
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论