美文网首页iOSiOS与SDK
iOS-微信分享SDK

iOS-微信分享SDK

作者: 清都 | 来源:发表于2017-12-14 18:05 被阅读43次

官方文档:微信开放平台

向微信注册应用程序id

开发者应用登记页面进行登记,登记并选择移动应用进行设置后,将获得AppID,可立即用于开发。但应用登记完成后还需要提交审核,只有审核通过的应用才能正式发布使用。

搭建开发环境

  • 通过终端在工程的Podfile里面添加以下代码:

platform :ios, '8.0'

target '工程名' do

pod 'WechatOpenSDK'

end
  • 保存并pod install

  • 设置工程项
    在Xcode中,选择工程设置项,在“info”标签栏的“URL type“添加“URL scheme”为你所注册的应用程序id(AppID)。identifierweixinURL Schemes为所注册的应用程序id。

设置AppDelegate

  • 导入#import <WXApi.h>,并加入<WXApiDelegate>协议

  • - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions中向微信终端注册AppID,写入[WXApi registerApp:@"wxfba72eb585ced789"];

  • 重写AppDelegate的handleOpenURL和openURL方法


-(BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url{
    
    return [WXApi handleOpenURL:url delegate:self];
}

-(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{
    
    return [WXApi handleOpenURL:url delegate:self];
}
  • 如果App要发消息给微信,那么需要调用WXApi的sendReq函数:-(BOOL) sendReq:(BaseReq*)req

实现分享功能

  • 导入#import <WXApi.h>

  • 分享或收藏的目标场景,通过修改scene场景值实现。共分为以下四种场景:


发送到聊天界面——WXSceneSession
发送到朋友圈——WXSceneTimeline
添加到微信收藏——WXSceneFavorite
  • 分享类型,具体查看微信开发文档。此处以最常用的网页类型分享为例。

    WXMediaMessage * message = [WXMediaMessage message];
    message.title = @"这是一个分享标题";
    message.description = @"我是分享内容";
    [message setThumbImage:[UIImage imageNamed:@"这是一张图片"]];
    
    WXWebpageObject * webPageObject = [WXWebpageObject object];
    //webPageObject.webpageUrl = @"https://douban.fm/?from_=shire_top_nav#/channel/153";
    webPageObject.webpageUrl = @"这是一个链接";
    message.mediaObject = webPageObject;
    
    SendMessageToWXReq * req1 = [[SendMessageToWXReq alloc]init];
    req1.bText = NO;
    req1.message = message;
    //设置分享到朋友圈(WXSceneTimeline)、好友回话(WXSceneSession)、收藏(WXSceneFavorite)
    req1.scene = WXSceneSession;
    [WXApi sendReq:req1];
  • 图片大小有限制,如果分享链接中的图片太大则分享会失败,无法跳转至微信,也不会有任何提示。
  • 部分分享的文字为敏感词,可能会出现分享中展示的图片不显示(经测试分享的字段中包含“拼”字,则图片无法显示)。

相关文章

  • iOS-微信分享SDK

    官方文档:微信开放平台 向微信注册应用程序id 到开发者应用登记页面进行登记,登记并选择移动应用进行设置后,将获得...

  • iOS 解决微信登录和友盟微信分享回调方法冲突的问题(state

    由于公司需要 微信登录使用的微信官方SDK 微信分享使用友盟微信分享 因为友盟SDK中已经集成微信SDK 所以ap...

  • iOS 开发笔记

    1、友盟分享微信SDK与微信支付SDK冲突解决方法:1、pod 友盟微信分享SDK2、在项目中删除pod友盟SDK...

  • vue实战(8)——微信二次分享及自定义菜单隐藏设置

    一、引入js文件 二、微信二次分享(SDK1.2.0) 三、微信二次分享(SDK1.4.0) 说明:最新SDK文档...

  • IOS(swift)-社交媒体 ·微信官方分享

    需求: 使用微信官方SDK进行分享 2.下载微信终端SDK文件SDK文件包括 libWeChatSDK.a,WXA...

  • Android-分享常见问题

    分享使用的SDK:均为官方SDK,个人建议不使用第三方分享库。 一、微信、新浪微博分享图片过大无法分享异常? 微信...

  • swift微信分享实现

    最近业务需要,做了微信分享,这里采用的是微信官方分享的sdk,下面说下sdk导入步骤及部分分享和分享场景的实现: ...

  • iOS-微信支付SDK

    微信支付流程:客户端发起支付请求--->后台和微信SDK交互之后返回带签名的客户端支付信息(之前带签名的支付信息是...

  • iOS集成微信分享

    一、微信分享,首先利用CocoaPods,导入支付宝SDK 二、 创建微信分享管理类 WechatShareMa...

  • U-share分享详解

    U-share分享 官方集成文档地址 1. 获取SDK 最新SDK地址 全选分享平台,(注意:微信 新浪微博 Q...

网友评论

    本文标题:iOS-微信分享SDK

    本文链接:https://www.haomeiwen.com/subject/yiwkwxtx.html