CSJWCApiProtocol.h 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. //
  2. // CSJWCApiProtocol.h
  3. // CSJAdSDK
  4. //
  5. // Created by bytedance on 2022/6/23.
  6. //
  7. #import <Foundation/Foundation.h>
  8. NS_ASSUME_NONNULL_BEGIN
  9. /*! @brief 打印回调的block
  10. *
  11. */
  12. typedef void(^CSJWCApiLogBolock)(NSString *log);
  13. @protocol CSJWCApiProtocol <NSObject>
  14. @optional
  15. /*! @brief WXApi的成员函数,向微信终端程序注册第三方应用。
  16. *
  17. * 需要在每次启动第三方应用程序时调用。
  18. * @attention 请保证在主线程中调用此函数
  19. * @param appid 微信开发者ID
  20. * @param universalLink 微信开发者Universal Link
  21. * @return 成功返回YES,失败返回NO。
  22. */
  23. + (BOOL)registerApp:(NSString *)appid universalLink:(NSString *)universalLink;
  24. /*! @brief 获取当前微信SDK的版本号
  25. *
  26. * @return 返回当前微信SDK的版本号
  27. */
  28. + (NSString *)getApiVersion;
  29. /*! @brief 发送请求到微信,等待微信返回onResp
  30. *
  31. * 函数调用后,会切换到微信的界面。第三方应用程序等待微信返回onResp。微信在异步处理完成后一定会调用onResp。支持以下类型
  32. * SendAuthReq、SendMessageToWXReq、PayReq等。
  33. * @param req 具体的发送请求。
  34. * @param completion 调用结果回调block
  35. */
  36. + (void)sendReq:(id)req completion:(void (^ __nullable)(BOOL success))completion;
  37. + (id)object;
  38. /*! @brief WXApi的成员函数,接受微信的log信息。byBlock
  39. 注意1:SDK会强引用这个block,注意不要导致内存泄漏,注意不要导致内存泄漏
  40. 注意2:调用过一次startLog by block之后,如果再调用一次任意方式的startLoad,会释放上一次logBlock,不再回调上一个logBlock
  41. *
  42. * @param level 打印log的级别
  43. * @param logBlock 打印log的回调block
  44. */
  45. + (void)startLogByLevel:(NSInteger)level logBlock:(CSJWCApiLogBolock)logBlock;
  46. /** 小程序username */
  47. @property (nonatomic, copy) NSString *userName;
  48. /** 小程序页面的路径
  49. * @attention 不填默认拉起小程序首页
  50. */
  51. @property (nonatomic, copy, nullable) NSString *path;
  52. /** 分享小程序的版本
  53. * @attention (0:正式,1:开发,2:体验)
  54. */
  55. @property (nonatomic, assign) NSUInteger miniProgramType;
  56. @end
  57. NS_ASSUME_NONNULL_END