本篇内容主要讲解“解决Twitter分享索权过多问题的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“解决Twitter分享索权过多问题的方法是什么”吧!
ShareSDK分享流程
不同社交平台的分享API并不相同,但多数需要在分享前完成授权。ShareSDK同时提供了分享(share)和授权(authorize)两个API,只是为了使用方便,分享API背后默认进行了授权检查,所以开发者日常可忽略授权的API(如下图):
而Twitter的问题在于默认情况下,它的授权动作索取了太多权限:
所以解决这个问题的第一个办法,就是不要让ShareSDK默认完成授权,而是在分享前调用authorize的另一重载,实现对权限裂变的控制。
尝试1、通过重载的授权方法减少索权
执行分享前先通过isAuth方法判断终端用户是否已经授权了分享,如未授权,则自行调用authorize的另一种重载方法authorize(String[])来直接指定需要的权限列表进行授权,并在授权成功后调用share方法继续分享。
因此现在只要查一下Twitter开放平台的文档,找到所需的权限就能解决问题——结果很遗憾!Twitter并没有权限列表的概念,所以这个方案不可行。
既然通过代码配置不可行,根据我们过往的经验,只能在Twitter的App控制台内进行配置。 果不其然,在一个不起眼的角落里,发现了Twitter的权限分级选项,但只有3个:只读、写入和读写(如下图):
一般情况下, “只读”选项肯定申请了最少的权限,切换之后,授权页面的权限列表少了很多,但完成授权后却直接影响了分享功能,Twitter提示权限不够!
这样看来,分享动作至少要“写入”权限。在尝试设置后,尽管可以执行分享工作,但授权页的权限列表又增多了。
既然开放平台的API不能解决这个问题,那只能寻求操作系统API的帮助了,这里的实现原理也很简单(如下图):
对于安卓系统而言,这个方案操作很简单。先前ShareSDK已给部分平台提供了这个功能,而在iOS平台实现,开发者需要注意不同App提供的API会有差异,甚至还会受到iOS系统和App版本的影响。
完成了尝试三的修改,Twitter索权过多的问题确实就被解决。并且和之前一样,可以通过增加一项配置、无需修改分享的调用代码,就可直接切换至新的分享方式,特别适用于只需要分享而无需登录的场景应用。
除了Twitter,我们还将这种方案推广到所有同样模式的社交平台中,建议出海开发者更新至最新版本,适用此方案进行分享,解决用户在分享中产生授权过多的问题。
很多移动开发者都有了解,分享涉及的平台众多,需要挨个接入可不是件容易活儿。更别说各平台的配置、更新以及兼容适配性等问题,没一件省事。项目组的研发、推广、运营、品牌打造等工作,已足够焦头烂额,社交平台的接入是否有更简便的方法?
有!用ShareSDK!
ShareSDK仅需一键集成,轻松解决了以上开发困扰,同时还省去了后续一系列维护平台的步骤,省时省心又省事。
在信息安全越来越被关注的时代,ShareSDK对每个平台的安全性非常重视且严谨对待,是业内知名且安全系数高的一款社交化分享组件。当前ShareSDK已融入了原生和系统分享,完善的分享方式,让开发者使用更便捷!
到此,相信大家对“解决Twitter分享索权过多问题的方法是什么”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。