ShareSDK for Android 只有新浪微博分享
本文代码例子:http://pan.baidu.com/share/link?shareid=3710053477&uk=3189484501
ShareSDK 官方的例子非常好,但代码太多看起来不方便。我这里整理了一个只有一个微博分享的例子。
不过Android导入工作比较麻烦
首先,导入jar包,要参考官方提供的说明文档选自己需要的我这里只留了新浪和腾讯微博的
添加ShareSDK.conf AppKey的资料都在这个里面 这个文件用记事本打开,将里面的appkey等资料换成自己就OK,要看官方的文档啊。
接下来是大量的图片资源
以上图片资源都是在官网提供的例子中复制的我只留了必要的图片资源和新浪和腾讯微博的。
接下来是配置文件,在考配置文件时,要注意,有些文件之前系统就有的要将里面的内容复制到对应的文件中,比如:string.xml 这里要多多注意啊。不然程序可能会出错
最后考入快捷分享的包,其实用这个库最大的好处就是分享方便不用自己写界面。
记得写配置文件:androidmanifest.xml啊
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS"/>
<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
<activity
android:name="cn.sharesdk.framework.ShareSDKUIShell"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:configChanges="keyboardHidden|orientation"
android:screenOrientation="portrait"
android:windowSoftInputMode="stateHidden|adjustResize" >
<!--
Adapter表示一个继承自cn.sharesdk.framework.authorize.AuthorizeAdapter的类,
这个类可以监听到页面的生命周期,也可以获取授权页面的各种UI控件。
开发者可以通过继承AuthorizeAdapter,重写其方法,并获取各种UI来自定义这个页面的行为。
-->
<meta-data android:name="Adapter" android:value="cn.sharesdk.demo.MyAdapter" />
</activity>
做了这么多准备工作,接下来我们进入最后的环节
下面的代码中有一个Button,自己在布局文件中拖一个吧 这里不给代码了
package com.example.sharesdkandroid; import java.util.HashMap; import cn.sharesdk.framework.Platform;
import cn.sharesdk.framework.PlatformActionListener;
import cn.sharesdk.framework.ShareSDK;
import cn.sharesdk.onekeyshare.OnekeyShare;
import cn.sharesdk.sina.weibo.SinaWeibo;
import android.os.Bundle;
import android.R.string;
import android.app.Activity;
import android.content.Context;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button; public class MainActivity extends Activity implements OnClickListener,PlatformActionListener{ private Button btnButton; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); ShareSDK.initSDK(this); btnButton = (Button)findViewById(R.id.btn1);
btnButton.setOnClickListener(this); Platform qzone = ShareSDK.getPlatform(this, SinaWeibo.NAME);
String openID = qzone.getDb().getUserId();
String accessTokenString = qzone.getDb().getToken();
String nickname = (String)qzone.getDb().get("nickname");
System.out.println(openID);
System.out.println(nickname);
System.out.println(accessTokenString);
String headicon = qzone.getDb().get("icon");
System.out.println(headicon); } @Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
ShareSDK.stopSDK(this);
} @Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
} @Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn1: OnekeyShare oksOnekeyShare = new OnekeyShare();
oksOnekeyShare.setNotification(R.drawable.ic_launcher, "ffff");
oksOnekeyShare.setText("ffffffffffffffff"); oksOnekeyShare.setPlatform(SinaWeibo.NAME);
oksOnekeyShare.setSilent(true);
oksOnekeyShare.show(this); System.out.println("===================================");
Platform qzone = ShareSDK.getPlatform(this, SinaWeibo.NAME);
String openID = qzone.getDb().getUserId();
String nickname = (String)qzone.getDb().get("nickname");
System.out.println(openID);
System.out.println(nickname); // weiboPlatform.setPlatformActionListener(this);
//
// weiboPlatform.authorize(); // Platform.ShareParams sParams = new SinaWeibo.ShareParams();
// sParams.text = "text";
// Platform weibo = ShareSDK.getPlatform(this, SinaWeibo.NAME);
// weibo.share(sParams); break; default:
break;
} } @Override
public void onCancel(Platform arg0, int arg1) {
// TODO Auto-generated method stub } @Override
public void onComplete(Platform arg0, int arg1, HashMap<String, Object> arg2) {
// TODO Auto-generated method stub
System.out.println("===================================");
Platform qzonePlatform = ShareSDK.getPlatform(this, SinaWeibo.NAME);
String accessTokenString = qzonePlatform.getDb().getToken();
System.out.println(accessTokenString); } @Override
public void onError(Platform arg0, int arg1, Throwable arg2) {
// TODO Auto-generated method stub } }
OK,可以分享了。
ShareSDK for Android 只有新浪微博分享的更多相关文章
- Android 集成新浪微博分享及授权 (上)
2014-05-05 20:16 10663人阅读 评论(8) 收藏 举报 分类: android(33) 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[-] 第一部分 ...
- Android 中实现分享和第三方登陆---以新浪微博为例
第三方登陆和分享功能在目前大部分APP中都有,分享功能可以将自己觉得有意义的东西分享给身边的朋友,而第三方登陆可以借助已经有巨大用户基础的平台(如QQ和新浪微博)的账号,让用户在使用自己APP的时候不 ...
- 【社交分享SDK】ShareSDK for Android 2.5.9已经公布
ShareSDK for Android 2.5.9已经公布 版本号:V2.5.9 2015-3-19 1.升级Dropbox对API接口的调用.包含授权.获取用户信息,分享三个接口 2.升级Kak ...
- [deviceone开发]-QQ分享、微信分享和新浪微博分享
一.简介 该demo主要实现QQ分享.微信分享和新浪微博分享.(调试包请到论坛扫描对应二维码下载) 二.效果图 三.相关讨论 http://bbs.deviceone.net/forum.php?mo ...
- Android 友盟分享躺过的几个坑,大坑,坑爹啊
前言:公司上线了一个项目,做Android 客户端集成友盟分享,在做得过程中,遇到了下面3个问题,希望其他小伙伴注意. ) 错误1: 1.错误描述 我是照着友盟的集成文档一步一步的集成的,做完后,发现 ...
- iOS开发---集成ShareSDK实现第三方登录、分享、关注等功能。
(1)官方下载ShareSDK IOS 2.9.6,地址:http://sharesdk.mob.com/Download (2)根据实际情况,引入相关的库,参考官方文档. (3)在项目的AppDel ...
- ShareSDK for Android 2.3.8它已发表
ShareSDK for Android 2.3.8已经公布,本次更新内容包含: 1.一键分享加入"摇一摇截图分享"功能 3.优化一键分享截图分享功能 4.一键分享编辑页界面微调 ...
- sharesdk for android集成调试的几个问题
1.一定要下载最新版,这个东西目前版本升级很频繁,证明产品本身还不稳定,最新版bug会少一点 2.下载最新版SDK的时候,跟随下载最新Sample,官网文档的示例代码及时性很差. 3.调试的几个Key ...
- ShareSDK for Android 2.3.10已经公布
ShareSDK for Android 2.3.10已经公布,本次更新内容包含: 1.加入自己定义分享标签功能 新版本号SDK下载页面地址: http://share.sharesdk.cn/Dow ...
随机推荐
- spring MVC中文乱码相关总结
总结几种方式,都使用的话能解决大多数乱码的情况 1.所有页面使用 <%@page language="java" pageEncoding="UTF-8" ...
- 解决iOS7中UITableView在使用autolayout时layoutSubviews方法导致的crash
近期公司项目上线后,出现了大量的crash,发生在iOS7系统上,和UITableView相关: Auto Layout still required after executing -layoutS ...
- 下载文件 ,调用系统的方法(UIDocumentInteractionController) 查看
- DevOps探索
devops最近随着docker的升温而被越来越多的人所吸引!最近因项目所需投身到devops的项目当中,经过初步的实践搞出一套 paas平台的devops,这个平台现在还需要检验! 作为一个dev, ...
- Ubuntu 14.10 编译 qt4.8.6
0. 假设你已经可以在上面写基本的C++程序.(即:c/C++开发环境已经就绪)1. $ sudo apt-get build-dep libqt4-dev 2. $ sudo apt-get ins ...
- WINDOWS操作系统中可以允许最大的线程数(线程栈预留1M空间)(56篇Windows博客值得一看)
WINDOWS操作系统中可以允许最大的线程数 默认情况下,一个线程的栈要预留1M的内存空间 而一个进程中可用的内存空间只有2G,所以理论上一个进程中最多可以开2048个线程 但是内存当然不可能完全拿来 ...
- 细说SSO单点登录(转)
什么是SSO? 如果你已知道,请略过本节! SSO核心意义就一句话:一处登录,处处登录:一处注销,处处注销.即:在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统. 很多人容易把SS ...
- html文件中文在浏览器中显示乱码问题解决
利用浏览器打开html文件时,中文显示乱码,如下是原文件的内容 1 <html> 2 <head> 3 <title> ...
- 使用python网络库下载
下载1000次网页资源 1,普通循环方式下载1000次,非常慢 #!/usr/bin/python # -*- coding: utf-8 -*- import sys import os impor ...
- STM32关于优先级设定的理解 NVIC_SetPriority()
Systick模块初始化配置函数(Systick_config)中设定模块中断优先级的函数为: NVIC_SetPriority((SysTick_IRQn, (1<<__NVIC_PRI ...