友盟分享SDK下载及官方文档

http://dev.umeng.com/social/ios/detail-share

1.注册应用获取App友盟Appkey(556d14ad67e58eb084003fed)

2.下载SDK并导入工程内

3.添加库文件

/友盟分享  注意添加类库 libz.1.1.3.dylib libstdc++.dylib
/** 需添加类库
Security.framework
libiconv.dylib
SystemConfiguration.framework
CoreGraphics.Framework
libsqlite3.dylib
CoreTelephony.framework
libstdc++.dylib
libz.dylib
*/

4.配置URL schemes

配置URL是为了能够分享到其他应用后能返回当前应用,不配置将无法返回

步骤:搜索plist,选择Inf.plist,添加一项URL types

添加相关Url(详细如何设置 URL schemes

(相关扩展阅读 iOS 客户端URL Scheme配置以及使用)

添加相关代码

AppDelegate.h 文件

//
// AppDelegate.h
// UMShareTestDemo #import <UIKit/UIKit.h> #define UmengAppkey @"5513d956fd98c579b80003de" //友盟分享Key @interface AppDelegate : UIResponder <UIApplicationDelegate>
@property (strong, nonatomic) UIWindow *window;
@end

 AppDelegate.m 文件

//  AppDelegate.m
// UMShareTestDemo
//
// Created by luo.h on 15-6-2.
// Copyright (c) 2015年 sibu.cn. All rights reserved.
// #import "AppDelegate.h" #import "UMSocialWechatHandler.h"//微信分享
#import "UMSocialQQHandler.h" //QQ分享 #import "UMSocial.h"//友盟分享 注意添加类库 libz.1.1.3.dylib libstdc++.dylib
/** 注意添加类库,否则报错
Security.framework
libiconv.dylib
SystemConfiguration.framework
CoreGraphics.Framework
libsqlite3.dylib
CoreTelephony.framework
libstdc++.dylib
libz.dylib
*/
@interface AppDelegate () @end @implementation AppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch. [self UMSociaShareSetting];//UMShare return YES;
} #pragma mark ---友盟分享相关设置 Beggin----
-(void)UMSociaShareSetting
{
[UMSocialData setAppKey:UmengAppkey];//友盟分享 //设置微信AppId、appSecret,分享url 微信,QQ
[UMSocialWechatHandler setWXAppId:@"wx2cbecfee5bbcdca8" appSecret:@"e0b32875602ccbb7147c9e944807c39b" url:@"https://weishang.org/download/"];
[UMSocialQQHandler setQQWithAppId:@"1104521802" appKey:@"a1zNFkJ4IY76mu0A" url:@"https://weishang.org/download/"];
} - (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
return [UMSocialSnsService handleOpenURL:url];
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication
annotation:(id)annotation
{
BOOL result = [UMSocialSnsService handleOpenURL:url];
if (result == FALSE) {
//调用其他SDK,例如新浪微博SDK等
}
return result;
}
#pragma mark ---友盟分享相关设置 End----

分享页面设置 ViewController

//
// ViewController.m
// UMShareTestDemo
#import "ViewController.h" #import "AppDelegate.h"//UmengAppkey在AppDelegate里
#import "UMSocial.h" //UM分享 @interface ViewController ()<UMSocialUIDelegate> @end @implementation ViewController - (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
UIButton *shareButton=[UIButton buttonWithType:UIButtonTypeCustom];
shareButton.frame=CGRectMake(100,100, 100, 80);
shareButton.backgroundColor=[UIColor orangeColor];
[shareButton setBackgroundImage:[UIImage imageNamed:@""] forState:UIControlStateNormal];
[shareButton setTitle:@"UM分享" forState:UIControlStateNormal];
[shareButton addTarget:self action:@selector(UMShareUI) forControlEvents:UIControlEventTouchDown];
[self.view addSubview:shareButton];
} #pragma mark-------------- 友盟分享 -----------------
//友盟分享
-(void)UMShareUI
{
NSString *shareText = @"手机在手即可随时随地完成微商权威认证https://weishang.org/center/download"; //分享内嵌文字
UIImage *shareImage = [UIImage imageNamed:@"shareIcon"]; //分享内嵌图片
NSArray *arrayNames=[NSArray arrayWithObjects:UMShareToWechatSession,UMShareToWechatTimeline,UMShareToQQ,UMShareToQzone,UMShareToSina,UMShareToTencent,UMShareToSms,UMShareToDouban,nil]; //注意:分享到微信好友、微信朋友圈、微信收藏、QQ空间、QQ好友、来往好友、来往朋友圈、易信好友、易信朋友圈、Facebook、Twitter、Instagram等平台需要参考各自的集成方法
[UMSocialSnsService presentSnsIconSheetView:self
appKey:UmengAppkey
shareText:shareText
shareImage:shareImage
shareToSnsNames:arrayNames
delegate:self];
} //弹出列表方法presentSnsIconSheetView需要设置delegate为self
-(BOOL)isDirectShareInIconActionSheet
{
return NO;//NO 不直接分享
} -(void)didCloseUIViewController:(UMSViewControllerType)fromViewControllerType
{
NSLog(@"didClose is %d",fromViewControllerType);
} //下面得到分享完成的回调
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
NSLog(@"didFinishGetUMSocialDataInViewController with response is %@",response);
//根据`responseCode`得到发送结果,如果分享成功
if(response.responseCode == UMSResponseCodeSuccess)
{
//得到分享到的微博平台名
NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
}
else
{
NSLog(@"分享失败");
}
} @end

PS:QQ空间必须为图文分享,否则分享失败

Demo下载 https://files.cnblogs.com/files/sixindev/UMShareTestDemo.zip

首先需要在开发者平台注册应用,获取APPID

 QQ开放平台
 
微信开发平台
 
 
 

极光推送

 
 
极光测试推送Demo下载
里面有证书和描述文件,直接安装即可,极光推送账号为公用账号
 
 
iOS远程推送(APNS)测试工具
 
 
 

友盟分享,极光推送Demo的更多相关文章

  1. tp的极光推送demo

    原文地址:http://blog.csdn.net/zhihua_w/article/details/52197611 极光推送(JPush)是独立的第三方云推送平台,致力于为全球移动应用开发者提供专 ...

  2. ThinkPHP框架整合极光推送DEMO

    极光推送(JPush)是独立的第三方云推送平台,致力于为全球移动应用开发者提供专业.高效的移动消息推送服务. 本篇博文讲述如何在将极光推送DEMO整合到ThinkPHP框架中,我使用的是极光推送PHP ...

  3. 极光推送Demo

    <?php //极光推送的类    //文档见:http://docs.jpush.cn/display/dev/Push-API-v3         /***使用示例***/        ...

  4. 友盟umeng消息推送直接复制就能用(纯干货)

    一. 单播推送(unicast) 1.1 图 1.2 代码 1 /** 2 * 根据设备的deviceToken, 去给指定的设备推送消息 3 * 4 * @param deviceToken 单个d ...

  5. 基于最新友盟开发文档,集成友盟分享功能,赋demo

    集成准备 获取Appkey 快速集成 获取SDK,页面截图: 下载后打开 导入jar和res 添加回调Activity 微信 在包名目录下创建wxapi文件夹,新建一个名为WXEntryActivit ...

  6. iOS开发——iOS10升级极光推送SDK、友盟分享SDK

    前不久升级了Xcode8 ,同时iOS10系统也推送久. 由于公司需要适配iOS 10系统,同时第三方sdk建议升级. 包含替换升级新的SDK和相应的代码修改. 主要分享如何升级极光推送SDK,友盟分 ...

  7. 极光推送---安卓Demo

    对于一个一直干.net的程序媛来说,冷不丁的让小编干安卓,那种感觉就好似小狗狗咬小刺猬一样,不知道从哪儿开始下手,对于小编来说,既是挑战更是机遇,因为知识都是相通的,再者来说,在小编的程序人生中,留下 ...

  8. 关于极光推送Jpush的demo

    关于极光推送Jpush 推送是手机app必不可少的一样功能,这次由于公司项目需要研究了一下.由于推送一般写于服务端,所以对于不会Android的javaweb程序员要写出一个完整的demo是一件很头痛 ...

  9. AppDelegate减负之常用三方封装 - 友盟分享 / 三方登录篇

    之前完成了 AppDelegate减负之常用三方封装 - 友盟推送篇: http://www.cnblogs.com/zhouxihi/p/7113511.html 今天接着来完成 - 友盟分享和三方 ...

随机推荐

  1. Log4j2进阶使用(按大小时间备份日志)

    1.进阶说明 本文介绍Log4j2进阶使用, 基本使用请参考Log4j2基本使用入门. 本文基于上面的基本使用入门, 主要介绍按照日志大小和时间备份日志, 并且限制备份日志的个数, 以及删除过期的备份 ...

  2. ARM微处理器的七种运行模式

    ARM微处理器的七种运行模式: 用户模式(usr):正常的程序执行状态 快速中断模式(fiq):用于处理快速中断,对高速数据传输或通道处理. 中断模式(irq):对一般情况下的中断进行处理. 管理模式 ...

  3. 自动化集成:Kubernetes容器引擎详解

    前言:该系列文章,围绕持续集成:Jenkins+Docker+K8S相关组件,实现自动化管理源码编译.打包.镜像构建.部署等操作:本篇文章主要描述Kubernetes引擎用法. 一.基础简介 Kube ...

  4. Git_使用SSH密钥操作远端仓库

    git支持多种传输协议,ssh协议是其中一种. 初次使用git的用户要使用ssh协议大概需要三个步骤: 生成密钥 设置远程仓库(本文以github为例)上的公钥 把git的 remote url 修改 ...

  5. 关于vue部署到nginx服务下,非根目录,刷新页面404的问题

    如果在根目录则添加 try_files $uri $uri/ /index.html; 如果不在根目录则添加,格式如下 location  /xxxx  { try_files $uri $uri/ ...

  6. Go语言系列之知识框架

    一.Go基础入门知识 二.变量和基本数据类型 三.流程控制语句 四.数组和切片 五.map的声明和使用 六.函数func方法 七.指针和地址 八.结构体 九.接口interface 十.并发神器gor ...

  7. Git 基础指令

    Git 基础指令 Git 基础指令 获取 Git 仓库 在已存在目录中初始化仓库 克隆现有的仓库 记录仓库与仓库的更新 仓库的记录 检查当前文件状态 三部曲 跟踪新文件 提交更新 移除文件 推送到远程 ...

  8. [论文翻译] 分布式训练 Parameter sharding 之 ZeRO

    [论文翻译] 分布式训练 Parameter sharding 之 ZeRO 目录 [论文翻译] 分布式训练 Parameter sharding 之 ZeRO 0x00 摘要 0x01 综述 1.1 ...

  9. Redis介绍一

    一.五中数据类型 String: 字符串 Hash: 散列 List: 列表 Set: 集合 Sorted Set: 有序集合 Redis 发布订阅 Redis 发布订阅 (pub/sub) 是一种消 ...

  10. docker创建mysql容器时挂载文件路径后无法启动(已解决)

    系统centos7 docker版本: 解决方法: 在docker run中加入 --privileged=true  给容器加上特定权限,如下 docker run --privileged=tru ...