`

AndroidQQ空间分享

 
阅读更多

先上图:

 

QZoneShareActivity.java:

 

package com.cz.hello.activity;


import java.util.ArrayList;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import com.cz.hello.R;
import com.cz.hello.dialog.WaittingDialog;
import com.cz.hello.utils.Constants;
import com.tencent.connect.share.QzoneShare;
import com.tencent.tauth.IUiListener;
import com.tencent.tauth.Tencent;
import com.tencent.tauth.UiError;

public class QZoneShareActivity extends BaseActivity implements OnClickListener {

	private Button share, btn_back;
    private EditText content = null;
    //QZone分享, SHARE_TO_QQ_TYPE_DEFAULT 图文,SHARE_TO_QQ_TYPE_IMAGE 纯图
    private int shareType = QzoneShare.SHARE_TO_QZONE_TYPE_IMAGE_TEXT;
    Tencent tencent;
    private WaittingDialog waittingDialog;
    

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        tencent = Tencent.createInstance(Constants.QQ.APP_ID, QZoneShareActivity.this);
        setContentView(R.layout.share_qqzone);

        share = (Button) findViewById(R.id.share);
        content = (EditText) findViewById(R.id.content);
        btn_back = (Button) findViewById(R.id.btn_back);
		btn_back.setOnClickListener(this);
        share.setOnClickListener(this);
    }

    private void shareQzone() {
    	waittingDialog = new WaittingDialog();
	    waittingDialog.show(this, null, this.getResources().getString(R.string.wait),
	    		 WaittingDialog.STYLE_SPINNER);
    	final Bundle params = new Bundle();
        params.putInt(QzoneShare.SHARE_TO_QZONE_KEY_TYPE, shareType);
        params.putString(QzoneShare.SHARE_TO_QQ_TITLE, Constants.APP_NAME);
        params.putString(QzoneShare.SHARE_TO_QQ_SUMMARY, content.getText().toString());
        params.putString(QzoneShare.SHARE_TO_QQ_TARGET_URL, Constants.QQ.targetUrl);
        // 支持传多个imageUrl
        ArrayList<String> imageUrls = new ArrayList<String>();
        imageUrls.add(Constants.QQ.LOGO_URL);
        params.putStringArrayList(QzoneShare.SHARE_TO_QQ_IMAGE_URL, imageUrls);
        doShareToQzone(params);
        return;
	}

    /**
     * 用异步方式启动分享
     * @param params
     */
    private void doShareToQzone(final Bundle params) {
        final Activity activity = QZoneShareActivity.this;
        new Thread(new Runnable() {
            
            @Override
            public void run() {
                // TODO Auto-generated method stub
            	tencent.shareToQzone(activity, params, new IUiListener() {

                    @Override
                    public void onCancel() {
                    	waittingDialog.dismiss();
                    	Toast.makeText(QZoneShareActivity.this, "取消发送!", Toast.LENGTH_LONG).show();
                    }

                    @Override
                    public void onError(UiError e) {
                    	waittingDialog.dismiss();
                    	Toast.makeText(QZoneShareActivity.this, "发送失败!", Toast.LENGTH_LONG).show();
                    }

					@Override
					public void onComplete(Object response) {
						waittingDialog.dismiss();
						Toast.makeText(QZoneShareActivity.this, "发送成功!", Toast.LENGTH_LONG).show();
					}

                });
            }
        }).start();
    }

	@Override
	public void onClick(View v) {
		switch (v.getId()) {
		case R.id.share:
			shareQzone();
			break;
		case R.id.btn_back:
			finish();
			break;
		default:
			break;
		}
	}
    
}

 

 

 

 

 

share_qqzone.xml:

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#F5F5F5"
    android:orientation="vertical" >
    
    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/bg_top" >

        <Button
            android:id="@+id/btn_back"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:layout_marginBottom="1dp"
            android:layout_marginLeft="5dp"
            android:layout_marginTop="1dp"
            android:background="@drawable/ic_back"
            android:gravity="center_vertical|left"
            android:textColor="@color/white" >
        </Button>

        <TextView
            android:id="@+id/title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_marginLeft="10dp"
            android:layout_toRightOf="@id/btn_back"
            android:text="分享"
            android:textColor="@color/white"
            android:textSize="16sp" >
        </TextView>
    </RelativeLayout>

    <EditText
        android:layout_width="match_parent"
        android:layout_height="120dp"
        android:layout_margin="10dp"
        android:gravity="top"
        android:id="@+id/content"
        android:text="@string/desc_content"
        android:background="@drawable/bg_round_corner" />
    
    <Button 
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/share"
        android:text="分享"
        android:textColor="@color/white"
        android:textSize="@dimen/l_size"
        android:layout_gravity="center"
        android:gravity="center"
        android:layout_margin="10dp"
        android:background="@drawable/btn_style_blue"/>

</LinearLayout>

 

 

  我的项目:http://zhushou.360.cn/detail/index/soft_id/1844528

 

  • 大小: 83.5 KB
  • 大小: 197.4 KB
0
0
分享到:
评论

相关推荐

    android QQ空间分享

    综上所述,"android QQ空间分享"涉及到的技术点包括Android应用开发、QQ空间SDK的使用、权限管理、用户交互设计、网络请求处理、异常处理以及兼容性测试。通过理解和掌握这些知识点,开发者可以成功地在Android应用...

    Android 一键分享到qq空间等

    在Android开发中,实现“一键分享到QQ空间等”功能主要涉及到社交网络集成(Social Network Integration)技术,其中ShareSDK是一个常用的第三方分享组件。本文将详细介绍如何利用ShareSDK实现这一功能,以及涉及到...

    android Qzone qq空间 分享

    总之,实现QQ空间分享功能需要集成腾讯开放平台SDK,设置分享内容,检查QQ应用是否已安装,处理分享结果,并确保用户已授权。通过以上步骤,你可以将Android应用的内容无缝分享到用户的QQ空间,增强应用的社交互动性...

    android QQ登录分享源码

    同样基于Tencent SDK,分享功能分为两种:一种是通过QQ客户端直接分享,另一种是通过QQ空间分享。 1. 设置分享内容:定义要分享的内容,包括标题、描述、图片、链接等。这些信息将通过`QQApiInterface`接口中的`...

    Android-Android分享SDK包括微信朋友圈微博QQQQ空间等渠道分享。

    四、QQ和QQ空间分享 QQ和QQ空间的分享功能由腾讯提供的TencentOpenAPI SDK实现。在项目中添加SDK依赖,设置所需的权限,然后通过`QQApiInterface`和`QZoneApiInterface`进行分享操作。对于QQ,可以使用`sendTextMsg`...

    分享QQ空间 Android

    【QQ空间Android分享功能详解】 在移动应用开发中,集成社交平台的分享功能已经成为不可或缺的一部分。本示例“分享QQ空间 Android”旨在帮助开发者实现Android应用程序中与QQ空间的无缝对接,让用户能够轻松地将...

    Android项目源码仿QQ空间源码.zip

    这个压缩包文件“Android项目源码仿QQ空间源码.zip”显然包含了一个Android应用程序的源代码,该程序设计用于模仿QQ空间的某些功能。QQ空间是中国非常流行的一款社交媒体平台,它集成了社交、博客、相册等多种功能。...

    Android微信、QQ 等分享demo

    在Android应用开发中,集成社交网络的分享功能已经成为不可或缺的一部分,尤其对于微信、QQ这样的主流社交平台。这个名为"Android微信、QQ等分享demo"的项目,旨在为开发者提供一个集成这些平台分享功能的示例代码,...

    安卓 android一键分享 新浪微博 腾讯微博,qq空间,qq,人人网

    在安卓(Android)平台上,实现一键分享到不同的社交媒体平台,如新浪微博、腾讯微博、QQ空间、QQ以及人人网,是一项常见的功能需求。开发者通常会利用各种API和SDK来集成这些社交网络的服务,使得用户能够方便地将...

    QQ空间分享的demo

    1.去除处QQ空间分享以外的所有功能,只保留单纯的QQ分享,页面只有一个按钮。 2.新增QQ登录之后直接跳转到QQ空间分享编辑页,无需回到主界面点击, 3.整个项目只有一个java文件,通俗易懂,十分适合初弄分享的...

    QQ空间分享,QQ好友分享

    - QQ空间分享:通过`QZoneShare`类提供的接口,如`shareToQzone()`,可以分享文本、图片、链接等内容到用户的QQ空间动态。参数包括分享的类型、内容、标题、描述等。 - QQ好友分享:使用`QQShare`类的`shareToQQ()...

    android 分享应用内容到QQ空间,腾讯微博,新浪微博,人人网等

    "android 分享应用内容到QQ空间,腾讯微博,新浪微博,人人网等"这个标题涉及到的是如何将应用内的信息通过各种社交网络进行传播,从而扩大应用的影响力。下面我们将详细探讨如何在Android应用中实现这一功能。 ...

    QQ和QQ空间分享接口开发包

    QQ和QQ空间分享接口开发包是为Android应用开发者设计的一款工具,主要用于实现应用程序与QQ、QQ空间的无缝连接,让用户的社交分享体验更加便捷。在Android平台上,通过这些接口,开发者可以轻松集成QQ登录、分享内容...

    使用shareSDK实现QQ空间登录分享DEMO

    本DEMO主要展示了如何利用ShareSDK 1.x版本实现在Android平台上实现QQ空间的登录和分享功能。 首先,我们需要在项目中引入ShareSDK的相关库。ShareSDK 提供了一个集成包,包含了所有支持的社交平台SDK。在Android ...

    Android 第三方分享

    1. QQ和QQ空间分享: 要在Android应用中分享到QQ或QQ空间,首先需要集成Tencent SDK。注册开发者账号,获取AppID,并在项目中添加对应的SDK库。然后创建Intent,设置Action为"com.tencent.tauth.UIAction", 设置...

    android 如何分享到空间

    在Android平台上,分享内容到社交平台如QQ空间是一项常见的功能,它允许用户将文本、图片、链接等信息轻松地发布到自己的社交网络上。本文将详细介绍如何在Android应用中实现分享到QQ空间的功能。 首先,要实现这个...

    android 分享各平台

    这篇内容主要聚焦于如何在Android应用中实现跨平台分享,包括微博(如新浪微博、腾讯微博)、社交网络(如QQ空间、微信朋友圈)、即时通讯工具(如QQ好友、微信好友)以及传统通信方式(如短信和邮件)。 首先,...

    Android分享Demo

    本示例项目“Android分享Demo”提供了一个简单易用的解决方案,涵盖了QQ分享、微信分享、空间分享以及微博分享等多种分享方式。下面,我们将详细探讨这些分享功能的实现及原理。 首先,QQ分享需要集成QQ SDK,通过...

    Android实现微信分享功能.zip

    7. **实现QQ空间分享** - 创建`QQApiInterface.NewsMsg`对象,设置分享的标题、描述、链接和图片。 - 使用`QQApiInterface.sendReq()`,指定分享到QQ空间,`BaseReq`的`scene`字段设置为`QQApiInterface.QZONE`。 ...

Global site tag (gtag.js) - Google Analytics