android 微信 以及QQ的SDK接入分享功能遇到的些问题小结

首先是微信分享:

 微信分享做的不是很好,给别人的测试和开发带来了很大的不便、

1 : 确定你的Apk包名和签名是否与开放平台填写的一致,尤其签名,必须保持一致,否则不能启动微信客户端;

2: 你的src目录下必须含有包名.wxapi这个包,里面必须含有WXEntryActivity.java文件,否则启动的时候会出错,

并且该类便于微信分享结果回调到应用界面给与提示;

3:当你的分享含有图标时检查发送时的缩略图大小是否超过32k(不能包含32k要小于32k,亲测过)

4: 分享的文字长度限制:(亲自遇到过该问题,当超过一定的长度是不能启动微信客户端的)

标题: title,不能超过 512Bytes

描述:description, 不能超过 1KB

微信推荐链接参考: http://blog.csdn.net/zs20082012/article/details/53115814



QQ分享相比微信要简单的多:

1:在AndroidManifest.xml里声明QQ相关的Activity 如:

<activity
    android:name="com.tencent.tauth.AuthActivity"
    android:launchMode="singleTask"
    android:noHistory="true" >
    <intent-filter>
        <action android:name="android.intent.action.VIEW" />

        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />

        <data android:scheme="tencentXXXXXXXX" />
    </intent-filter>
</activity>
<activity
    android:name="com.tencent.connect.common.AssistActivity"
    android:configChanges="orientation|keyboardHidden"
    android:screenOrientation="behind"
    android:theme="@android:style/Theme.Translucent.NoTitleBar" />

注意XXXXXXX的地方,要换成你的APP_ID

2:如果想要回调结果提示的话,其实很多做的qq分享并没有设置回调提示

在启动qq分享的页面 重载onActivityResult函数

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    // 官方文档没没没没没没没没没没没这句代码, 但是很很很很很很重要, 不然不会回调!
    Tencent.onActivityResultData(requestCode, resultCode, data, shareListener);

    if (requestCode == Constants.REQUEST_API) {
        if (resultCode == Constants.REQUEST_QQ_SHARE ||
                resultCode == Constants.REQUEST_QZONE_SHARE ||
                resultCode == Constants.REQUEST_OLD_SHARE) {
            Tencent.handleResultData(data, shareListener);
        }
    }
}

3:上面的回调结果中用到的shareListener,是需要加一个回调接口,用于提示回调结果

public class QQShareListener implements IUiListener{
	
	private Context mContext;
	
	public QQShareListener (Context context){
		this.mContext = context;
	}
	
    @Override
    public void onCancel() {
        Toast.makeText(mContext, R.string.errcode_cancel, Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onError(UiError uiError) {
        Toast.makeText(mContext, mContext.getText(R.string
                .errcode_fail) + uiError.errorMessage + "\n" +uiError.errorDetail,Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onComplete(Object o) {
    	Toast.makeText(mContext, R.string.errcode_success, Toast.LENGTH_SHORT).show();
    }
}

4: 测试注意点

当分享到qq好友时,有时会提示你的应用不存在,这是由于你的应用还在审核中,虽然分配了appId但是并未审核通过,审核过了就可以了,

而且在旧的版本的手机qq是没有这个提示的,是可以分享的,但是来自XXX的图标是显示不了的,这都是由于应用尚未审核通过。

就是比较奇葩的是分享到qq空间是没有这些问题的,只要分配了appId,用用未审核通过也能分享qq空间(qq版本也没什么影响)


推荐链接参考:http://blog.csdn.net/leluck/article/details/50596768

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值