要使用QQ分享等系列功能,首先要成为开发者,http://open.qq.com/,点击进入移动接入,首先需要创建一个移动应用。 获取APPID ,不需要经过审核即可进行开发
进入 http://open.qq.com/ 移动应用
创建移动应用
获取到应用的appid
下载 sdk
OK 导入所需要的jar包
搭建好了 开始写代码
QQ分享主要使用2个类 , 一个QQ入口信息
com.tencent.connect.auth.QQAuth
QQ分享
com.tencent.connect.share.QQShare
代码片段
QQShare qqShare;
QQAuth qqAuth
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
//tencent =Tencent.createInstance(Prototypes.AppID, ZpInfoDetail.this);
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
qqAuth= QQAuth.createInstance("你的APPID", Activity.this); //根据APPID 获取入口信息
qqShare=new QQShare(this, qqAuth.getQQToken()); //获取QQ分享对象
分享到QQ好友
Bundle bundle = new Bundle();
bundle.putInt(QQShare.SHARE_TO_QQ_KEY_TYPE, QQShare.SHARE_TO_QQ_TYPE_DEFAULT);
bundle.putString(QQShare.SHARE_TO_QQ_TITLE, "分享信息的标题");
bundle.putString(QQShare.SHARE_TO_QQ_SUMMARY,"分享信息的主体内容");
bundle.putString(QQShare.SHARE_TO_QQ_TARGET_URL, "点击分享信息跳转的URL");
bundle.putString(QQShare.SHARE_TO_QQ_IMAGE_URL, "分享信息图片服务器图片路径");
qqShare.shareToQQ(ZpInfoDetail.this, bundle, new IUiListener() {
@Override
public void onError(UiError arg0) {
System.out.println("error"+arg0.errorMessage);//出错回调方法
}
@Override
public void onComplete(Object arg0) {
System.out.println("complete");//成功回调方法
}
@Override
public void onCancel() {
System.out.println("cancel");//取消回调方法
}
});
分享到QQ控件 主要使用
com.tencent.tauth.Tencent
com.tencent.connect.share.QzoneShare
代码片段
private Tencent tencent;
private IWXAPI api;
private IWeiboShareAPI mWeiboShareAPI;
private WeiboAuth weiboAuth;
private Oauth2AccessToken oauth2AccessToken;
private SsoHandler ssoHandler;
ImageUtil imageUtil;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
imageUtil=ImageUtil.getDefaultUtil(this);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_main);
tencent=Tencent.createInstance("你的APPID", this); //创建tencent实例
分享到QQ空间
Bundle params = new Bundle();
params.putInt(QzoneShare.SHARE_TO_QZONE_KEY_TYPE, QzoneShare.SHARE_TO_QZONE_TYPE_NO_TYPE);
params.putString(QzoneShare.SHARE_TO_QQ_TITLE, "分享到QQ空间的标题");
params.putString(QzoneShare.SHARE_TO_QQ_SUMMARY,"分享到QQ空间的内容");
params.putString(QzoneShare.SHARE_TO_QQ_TARGET_URL,"分享被点击跳转的URL");
ArrayList<String> arrayList = new ArrayList<String>(); //分享至QQ空间支持多图片分享
arrayList.add("分享图片的服务器路径");
params.putStringArrayList(QzoneShare.SHARE_TO_QQ_IMAGE_URL,arrayList);
tencent.shareToQzone(MainActivity.this, params, new com.tencent.tauth.IUiListener() {
@Override
public void onError(com.tencent.tauth.UiError arg0) { //出错调用的方法
}
@Override
public void onComplete(Object arg0) { //成功调用的方法
// TODO Auto-generated method stub
}
@Override
public void onCancel() {//取消调用的方法
// TODO Auto-generated method stub
}
});
}
最后补上 android 清单文件的配置, 需要注意一点,配置一个activity
<activity
android:name="com.tencent.tauth.AuthActivity"
android:noHistory="true"
android:launchMode="singleTask" >
<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="你的appid" />
</intent-filter>
</activity>
好了 分享到QQ好友与空间OK , 有什么不足的请指点 呵呵。。。。。。。~~~~~~~~