Android应用之——微信微博第三方sdk登录分享使用过程中的一些常见问题
前言
近期在使用第三方登录和分享的过程中遇到了非常多问题,一方面能够归结为自己经验的不足,还有一方面事实上也说明了官方文档的含糊不清。这篇博文不会写关于怎样使用第三方登录分享,由于官方文档已经写明了步骤,这里要写的东西是官方文档里面没用说明的一些问题,也是我自己在摸索的过程中发现和解决的问题。
一、微博登录和分享
微博sdk的集成过程官方下载的sdk文档中已经基本说明清楚了。这里不提了,说两个常常遇到过问题。
1、登录后停留在授权页,也就是登录后没有返回我们的应用。排除代码方面的原因后。还有几个原因导致这个问题的发生。
a.在应用程序的管理中心中没用填写应用程序包名和签名。或者在高级信息里面没用填写oauth2.0授权设置
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY3NyX3lhbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY3NyX3lhbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
假设这个地方填写错误或者没用填写的话,会导致授权后无法返回应用。
b.包名和签名填写正确而且填写了oauth授权页,还是出现无法返回应用的情况
这个时候就要考虑你的appkey的问题了,博主最開始是跟ios共用一个key的,后来查看官方说明里面有一条是尽量避免ios和android平台使用同一appkey。因此,又为android又一次申请了一个appkey,最后登录授权完毕后就成功的返回了应用。
所以遇到各项參数配置正确。代码正确可是还是无法返回应用的开发人员,建议又一次独立申请一个appkey,解决问题。
2、第二个问题也是比較常见的,sso package or sign error
这样的情况通常是应用程序签名的问题造成的,首先确认上面的签名和包名是否填写正确,包名这个就不用多说了,清单文件里的manifest节点下的package属性的值就是包名
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.yang.abc"
这里着重说一下签名的问题,由于这个问题也是常常导致出现这个sso package or sign error出现的原因。
签名的话用的是微博官方提供的签名工具,这里有个须要注意的地方:签名是依据你装在手机上面的应用来进行的。假设你的应用开发使用的是debug.keystore也就是eclipse默认的方式安装到手机上的,那么这个签名就是不是正式版使用的。假设你终于使用公布应用的时候还使用这个签名。那么这个key非常显然是不对的,就会发现上面的sso package or sign error错误。所以假设你的应用终于是要上线的,那么将apk安装到签名导出安装到手机后,再使用微博官方提供的签名工具执行一遍,得到签名。将这个签名填到管理中心的基本信息中,那么这个appkey才是合法的,使用不会出现上述的问题。
3、另一个问题,至今不知道是什么原因造成的,还要继续探索。
使用sso登录的时候。当手机上已经安装了微博client,会正常调用sso登录
当手机上没有安装微博client时,依照常理应该是调用网页登录,可是却出现了空指针的异常,并且debug会发现对象根本不为空,这个问题一直困扰着我,等找到解决方法了。补充上这一块。
二、微信第三方登录和分享
一个非经常见的问题:分享的时候假设没有登录微信,调出微信登录窗体。正确登录后点击分享无反应。
这个问题查了下,发现非常多人出现了。终于,经过排查,确认是申请的appkey信息有误造成的。
事实上这个问题也是签名的错误的原因造成的。debug.keystore和公布的keystore不同导致了这个问题。
在使用微信官方提供的签名工具获取应用签名的时候。要首先在手机上安装实用公布keystore签名的应用,然后得到的签名才是正确的签名,签名正确了使用appkey才不会出现上面的无法分享或者登录的问题。
Android应用之——微信微博第三方sdk登录分享使用过程中的一些常见问题的更多相关文章
- 【Demo】QQ,github,微博第三方社交登录
本文主要讲解 集成 第三方社交账号登录 为什么会有这个需求? 主要是因为目前互联网的网站数量太多,如果在各个站点都注册一个账号 用户非常不容易记住每个账号的用户名和密码,并且非常难保证每个账号的密码足 ...
- 微信支付第三方sdk使用
1.引入依赖:(对于依赖冲突自行解决) <dependency> <groupId>com.github.binarywang</groupId> <arti ...
- 学习Nodejs:《Node.js开发指南》微博项目express2迁移至express4过程中填的坑
<Node.js开发指南>项目地址https://github.com/BYVoid/microblog好不容易找到的基础版教程,但书中是基于express2的,而现在用的是express ...
- qq 微信 微博 第三方分享
<html> <head> <meta charset="utf-8"> <meta name="viewport" ...
- 微博第三方js-sdk登录
https://open.weibo.com <meta property="wb:webmaster" content="your appkey" /& ...
- PHP 接入(第三方登录)QQ 登录 OAuth2.0 过程中遇到的坑
前言 绝大多数网站都集成了第三方登录,降低了注册门槛,增强了用户体验.最近看了看 QQ 互联上 QQ 登录的接口文档.接入 QQ 登录的一般流程是这样的:先申请开发者 -> 然后创建应用(拿到一 ...
- qq登录,新浪微博登录接口申请过程中遇到的问题
接口申请下来了,开发很容易的,参数传到就可以了.以前就做过这方面的开发,但是申请还是第一次,网上有关这方面的东东不是很多,所以记录一下申请过程. 1,qq登录接口申请 申请地址是:http://con ...
- 社会化登录分享-Android SDK的二次封装和使用
本系列文章将第三方的登录分享功能进行二次封装,统一接口调用,简化了接不同平台登录分享的步骤. 0 系列文章 系列一 Android SDK的二次封装和使用 系列二 源码解析 系列三 微信SDK接入 系 ...
- unity 引入 android第三方sdk
unity中调用java代码中介绍了unity调用android java代码的一些基础.引入android开发第三方sdk的操作跟调用java代码的操作相似,只是多了一步引入第三方jar. unit ...
随机推荐
- 【POI 2007】 山峰和山谷
[题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=1102 [算法] 广度优先搜索 [代码] #include<bits/stdc+ ...
- python学习-字符串 列表 元祖
目录 Python翻转字符串(reverse string) 简单的步长为-1, 即字符串的翻转(常用) 递归反转 借用列表,使用reverse()方法 字符串常用操作 index split 切片 ...
- MVC HtmlHelper扩展——实现分页功能
MVC HtmlHelper扩展类(PagingHelper) using System; using System.Collections.Generic; using System.Collect ...
- parseint和isNaN用法
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- hdu3416 Marriage Match IV 最短路+ 最大流
此题的大意:给定一幅有向图,求起点到终点(都是固定的)的不同的最短路有多少条.不同的最短路是说不能有相同的边,顶点可以重复.并且图含有平行边. 看了题以后,就想到暴力,但是暴力往往是不可取的.(暴力的 ...
- Postfix Self Expression
Postfix Self Expression A postfix self expression consists of an expression or the name of a type, i ...
- 补充01 Django 类视图
视图 函数视图[Function Base View] 以函数的方式定义的视图称为函数视图,函数视图便于理解.但是遇到一个视图对应的路径提供了多种不同HTTP请求方式的支持时,便需要在一个函数中编写不 ...
- List或者Map等对象创建语句放在循环外和循环内的区别
每一个对象创建的时候都会有一个ID,List对象在执行add方法的时候是将对象的引用放入List中. 如果把创建Map对象的语句放在外面,在将对象add到List中时,前后向List中add的对象都是 ...
- immutable-js基础
Immutable.js(和原生方法不同): 用于深层次的数组和对象的比较 数据结构:Map Set Seq List Rang(和原生不同) 首先:先忘记es5 es6的数组对象方法 官 ...
- 【转】H5 input search 提交事件
欲实现一个文字搜索的功能,要求输入时,键盘回车按钮提示显示为“搜索”.效果如下: 开始~ input type=text并不能达到这种效果,google了一下,HTML5 增加的type=search ...