最近,做一款应用的分享功能,主要业务是分享一个网页给微信、QQ好友,然后用的是微信开发平台、腾讯开放平台的官方SDK分享。其中遇到了一些打不开、分享不了的坑,填好后,做了一下封装。总结记录一下。
废话不说,先上效果图
一、微信分享
(一) 配置微信分享、集成SDK
1.先要注册一个微信开发者账号,云云,此处不累述
2.第一个坑:创建应用,并申请APP ID
2.1 获取 应用签名
第一步:
配置你的应用app下的build.gradle(AS普及这么久了,我已经抛弃Eclipse了)
android {
// ...
signingConfigs {
config {
keyAlias '你的签名文件名'
keyPassword 'key的密码(如果有)'
storeFile file('签名文件的路径,比如我的 D:/signatrue/CHjijidao')
storePassword 'keystore的密码(如果有)'
}
}
buildTypes {
// release版本的配置
release {
// 是否混淆
minifyEnabled true
// 是否去除重复资源
zipAlignEnabled true
// 混淆文件
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
// 设置release下的签名配置
signingConfig signingConfigs.config
// 是否可以debug模式运行
debuggable true
}
// debug版本的配置
debug {
// 默认没有写的时候,build出来的debug版apk是使用的debug.keystore
// 现在设置签名为配置好的签名
signingConfig signingConfigs.config
}
}
}
/* 此处的目的是为了配置指定好签名,方便生成微信开发平台中需要填写的 ——“应用签名” */
在清单配置文件的application标签下添加
<!-- 用于在WXAPI中注册App-->
<receiver
android:name=".controller.AppRegister"
android:permission="com.tencent.mm.plugin.permission.SEND" >
<intent-filter>
<action android:name="com.tencent.mm.plugin.openapi.Intent.ACTION_REFRESH_WXAPP" />
</intent-filter>
</receiver>
<!-- 用于获得回调结果-->
<activity android:name=".wxapi.WXEntryActivity" android:exported="true"/>
附赠WXEntryActivity
public class WXEntryActivity extends Activity implements