热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

iOS自定义分享(一)分享组件的接入

前言在项目开发中,很多时候需要用到分享的功能。对于新手来说,分享是一个比较棘手的问题。并不是因为分享很难做,只是流程较多,第一次接触难免会出错,只要一个步骤错了,就无法继续下去。在这里对于

前言

在项目开发中,很多时候需要用到分享的功能。对于新手来说,分享是一个比较棘手的问题。并不是因为分享很难做,只是流程较多,第一次接触难免会出错,只要一个步骤错了,就无法继续下去。在这里对于几种常见的分享总结一下。

实现步骤

第一步:登录对应的网站,注册帐号,创建APP应用,获取AppID和AppKey;
第二步:下载对应的SDK,按照官方提供的文档配置工程,添加相应的依赖库;
第三步:添加对应的代码,调用SDK,实现分享功能。

一、QQ分享SDK的接入

1、创建应用,获取AppId和AppKey

(1) 首先,进入QQ互联(http://connect.qq.com),然后登录,可以自己注册帐号,也可以用自己的QQ登录。如下图:

这里写图片描述

(2) 点击”移动应用”,去创建一个新的应用。如下图:

这里写图片描述

(3)创建一个iOS应用,系统会自动给你分配AppID和AppKey,如下图:

这里写图片描述

(4)我这里只是创建一个测试帐号,只填写基本信息,然后点击”保存”即可。如下图:

这里写图片描述

(5) 我们就可以得到应用的AppId 和 AppKey 了,如下图:

这里写图片描述

AppId和AppKey主要是接下来注册SDK需要用到的。

2、下载API文档和SDK

(1) 首先,我们需要先下载API文档,根据API的文档来进行操作。

API文档下载 (http://wiki.open.qq.com/wiki/IOS_API调用说明)。点击对应的地方,进行下载即可。如下图:

这里写图片描述

(2) 下载对应的SDK

就在刚刚那个界面,下载SDK,位置如下图:

这里写图片描述

3、配置工程,接入SDK

(1) 将下载好的SDK文件加入工程目录中,SDK文件中包含如下两个文件,都要添加工程中。

这里写图片描述

(2)打开下载好的API文档,按照文档进行操作。当然,也可以按照我以下的说明操作进行。我的步骤和官方文档是一致的,但是我的比官方文档的要好,因为官方文档很多东西都是以前写的,并没有更新,而我的是最新的。

(3)添加如下图所示的依赖库

这里写图片描述

(4) 修改 Other Linker Flags 为:-fobjc-arc

这里写图片描述

(5) 添加一个URL Type,如下图:

这里写图片描述

在XCode中,选择你的工程设置项,选中“TARGETS”一栏,在“info”标签栏的“URL type”添加一条新的“URL scheme”,新的scheme = tencent + appid

(6) 在AppleDelegate.m文件中注册QQ分享SDK ,代码如下:

#define QQ_APPID @"1105141267"
#define QQ_APPKEY @"lSabCJvsMWDVOktm"


#import "AppDelegate.h"

#import 
#import 

@interface AppDelegate ()

@property (nonatomic,strong) TencentOAuth *tencentOAuth;

@end

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.

    _tencentOAuth = [[TencentOAuth alloc] initWithAppId:QQ_APPID andDelegate:nil];

    return YES;
}

(7) 编译一下,输出如下信息,则说明QQ分享的SDK接入成功。

这里写图片描述

二、微信分享SDK的接入

1、创建应用,获取AppId和AppKey

(1) 首先,进入微信开放平台(https://open.weixin.qq.com/),然后登录,可以自己注册帐号,也可以用自己的QQ登录。如下图:

这里写图片描述

(2) 点击移动应用开放下面的”了解更多”,去创建一个新的应用。如下图:

这里写图片描述

这里写图片描述

这里写图片描述

(3)填写好资料之后,提交审核,审核通过之后,系统会自动给你分配AppID和AppKey。AppId和AppKey主要是接下来注册SDK需要用到的。

2、查看API文档和微信分享SDK

(1) 首先,我们需要下载微信分享的SDK到本地,下载的地方如下图所示:

这里写图片描述

下载微信分享SDK的地址链接

(2) 微信分享SDK接入指南文档

这里写图片描述

3、配置工程,接入SDK

(1) 将下载好的SDK文件加入工程目录中,SDK文件中包含如下四个文件,都要添加工程中。

这里写图片描述

(2) 然后按照微信分享SDK接入指南文档进行操作,当然,也可以按照我以下的说明操作进行。我的步骤和官方文档是一致的,但是我的比官方文档的要好,因为官方文档很多东西都是以前写的,并没有更新,而我的是最新的。

(3)添加如下图所示的依赖库

这里写图片描述

(4) 添加一个URL Type

在Xcode中,选择你的工程设置项,选中“TARGETS”一栏,在“info”标签栏的“URL type“添加“URL scheme”为你所注册的应用程序id(如下图所示)。

这里写图片描述

(5) 在AppleDelegate.m文件中注册微信分享SDK ,如下图:

这里写图片描述

(6) 编译成功,则说明接入成功。

三、新浪分享SDK的接入

1、创建应用,获取AppId和AppKey

(1) 首先,进入新浪开放平台(http://open.weibo.com/),注册一个帐号并登录。如下图:

这里写图片描述

(2) 点击”立即接入”,去创建一个新的应用。如下图:

这里写图片描述

这里写图片描述

(3)填写好资料之后,提交审核,审核通过之后,系统会自动给你分配AppID和AppKey。AppId和AppKey主要是接下来注册SDK需要用到的。

2、查看API文档和下载新浪分享SDK

(1) 首先,我们需要下载新浪分享的SDK到本地,下载的地方如下图所示:

这里写图片描述

下载新浪分享SDK的地址链接

(2) 新浪分享SDK接入指南文档

下载地址

3、配置工程,接入SDK

(1) 将下载好的SDK文件加入工程目录中,SDK文件中包含如下12个文件,都要添加工程中。

这里写图片描述

(2) 然后按照微信分享SDK接入指南文档进行操作,当然,也可以按照我以下的说明操作进行。我的步骤和官方文档是一致的,但是我的比官方文档的要好,因为官方文档很多东西都是以前写的,并没有更新,而我的是最新的。

(3)添加如下图所示的依赖库

这里写图片描述

(4) 添加一个URL Type

在Xcode中,选择你的工程设置项,选中“TARGETS”一栏,在“info”标签栏的“URL type“添加“URL scheme”为你所注册的应用程序 wb+AppId,比如:wb87562423(如下图所示)。

这里写图片描述

(5) 在Xcode中,选择你的工程设置项,选中“TARGETS”一栏,在“Bulid Setting”标签栏的“Other Linker Flags“添加“-ObjC”

这里写图片描述

(6) 在AppleDelegate.m文件中注册新浪分享SDK ,如下图:

这里写图片描述

(7) 编译成功,则说明接入成功。


推荐阅读
  • 其实之前也有下载过完整的android源码,但是从来没有对这个做过一些总结,在加上最近需要经常去看,索性就在从新下载,编译一下,其实这些东西官网上面都有。http:sou ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 如何用UE4制作2D游戏文档——计算篇
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何用UE4制作2D游戏文档——计算篇相关的知识,希望对你有一定的参考价值。 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • imnewtotheswiftandxcodeworld,soimhavingaproblemtryingtointegrateapackagetomypro ... [详细]
  • 移动传感器扫描覆盖摘要:关于传感器网络中的地址覆盖问题,已经做过很多尝试。他们通常归为两类,全覆盖和栅栏覆盖,统称为静态覆盖 ... [详细]
  • 在真实开发中,因为需求是不断变化的,说不定什么时候就需要往模型里添加新的字段,添加新的模型,甚至是大规模的重构; ... [详细]
  • 序言Broadcast作为Android的四大组件之一,重要性不言而喻;一般我们使用广播的方式通常如下,继承BroadcastReceiver,新建一个广播类。publicclas ... [详细]
  • 20189216 2018-2019-2 《密码与安全新技术专题》第二次作业
    201892162018-2019-2《密码与安全新技术专题》第二次作业课程:《密码与安全新技术专题》班级:1892班姓名:鲍政李学号:20189216上课教师:谢四江上课日期: ... [详细]
  • Swagger2非全局、无需重复输入的Head参数(Token)配置网络上关于Swagger2的教程多如牛毛,作为关于Swagger加入全 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 本文详细介绍了在ASP.NET中获取插入记录的ID的几种方法,包括使用SCOPE_IDENTITY()和IDENT_CURRENT()函数,以及通过ExecuteReader方法执行SQL语句获取ID的步骤。同时,还提供了使用这些方法的示例代码和注意事项。对于需要获取表中最后一个插入操作所产生的ID或马上使用刚插入的新记录ID的开发者来说,本文提供了一些有用的技巧和建议。 ... [详细]
  • 本文讨论了一个数列求和问题,该数列按照一定规律生成。通过观察数列的规律,我们可以得出求解该问题的算法。具体算法为计算前n项i*f[i]的和,其中f[i]表示数列中有i个数字。根据参考的思路,我们可以将算法的时间复杂度控制在O(n),即计算到5e5即可满足1e9的要求。 ... [详细]
author-avatar
ik82jht
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有