微博分享和回调问题
前言:
最近公司需要用到分享的功能,微博分享是其中的一个模块,一开始打算用微博自带的api做,但是分享的渠道很多,最后放弃了,改用了umeng分享去做,下面总结下分享中微博出现的各种奇葩的问题
问题-针对as开发的同学们借鉴
问题1:.so包无法自动导入
解决办法:
在build.gradle下添加一下代码
<span style="font-size:14px;">packagingOptions {
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
}
/** 导入so文件 */
task nativeLibsToJar(type: Zip, description: "create a jar archive of the native libs") {
destinationDir file("$projectDir/libs")
baseName "Native_Libs2"
extension "jar"
from fileTree(dir: "libs", include: "**/*.so")
into "lib"
}
tasks.withType(JavaCompile) {
compileTask -> compileTask.dependsOn(nativeLibsToJar)
}</span>
build工程,会发现在libs下出现一个新的jar包:Native_libs2.jar
手动添加jar包到工程中,然后再一次build工程
问题2:分享不成功
解决办法:完善微博开发平台应用的信息(umeng分享才需要做配置)
1.配置安全域名:sns.whalecloud.com
2.配置回调:如图
取消授权是为了没有安装微博下也能网页登录:https://api.weibo.com/2/oauth2/authorize
问题3:微博分享不回调:
自带api开发同样这个问题,需要注意的是在自己开发的的工程中,微博调用返回的 Response必须是在activity外部即是implements,不能写成内部类
解决办法:配置工程的回调activity
1.WBShareActivity如图:
public class WXEntryActivity extends WXCallbackActivity {
}
2.修改回调WBShareActivity的配置:
<!-- 微博 -->
<activity android:name=".wbapi.WBShareActivity">
<intent-filter>
<action android:name="com.sina.weibo.sdk.action.ACTION_SDK_REQ_ACTIVITY"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
<activity
android:name="com.sina.weibo.sdk.component.WeiboSdkBrowser"
android:configChanges="keyboardHidden|orientation"
android:exported="false"
android:windowSoftInputMode="adjustResize">
</activity>
代码:
<span style="font-size: 18px;"> </span><span style="font-size:14px;"> <intent-filter>
<action android:name="com.sina.weibo.sdk.action.ACTION_SDK_REQ_ACTIVITY"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter></span>
再一次运行,祝你好运!
分析一下微博分享的问题原因是微博分享的功能比较全,还有就是各种so包支持的手机型号更多,所以导致出现这样的各种问题。