* 友盟第三方 登录 分享 登录网站http://dev.umeng.com/social/windows-phone/quick-share 下载SDK
*
* 1: 把SDK中的main中的(libs、res文件拷在工程的根部录下)
*
* 2:AndroidManifest配置 a)其中增加一个activity
*
* <activity android:name="com.umeng.socialize.editorpage.ShareActivity"
* android:theme="@style/Theme.UMDefault" android:excludeFromRecents="true"/>
*
* 3:设置友盟appid <meta-data android:name="UMENG_APPKEY"
* android:value="4eaee02c527015373b000003" > </meta-data>
*
* 4:增加权限 <uses-permission
* android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission
* android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission
* android:name="android.permission.READ_PHONE_STATE" /> <uses-permission
* android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission
* android:name="android.permission.INTERNET" /> <uses-permission
* android:name="android.permission.READ_LOGS" /> <uses-permission
* android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission
* android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission
* android:name="android.permission.GET_TASKS" /> <uses-permission
* android:name="android.permission.SET_DEBUG_APP" /> <uses-permission
* android:name="android.permission.SYSTEM_ALERT_WINDOW" /> <uses-permission
* android:name="android.permission.GET_ACCOUNTS" /> <uses-permission
* android:name="android.permission.USE_CREDENTIALS" /> <uses-permission
* android:name="android.permission.MANAGE_ACCOUNTS" />
*
*
* 5: 针对不平台所需要添加的数据 按照自己需要的平台添加对应的配置
*
* // 微信平台
*
* <activity android:name="com.umeng.soexample.wxapi.WXEntryActivity"
* android:configChanges="keyboardHidden|orientation|screenSize"
* android:exported="true" android:screenOrientation="portrait"
* android:theme="@android:style/Theme.Translucent.NoTitleBar" />
*
* // QQ、Qzone平台
*
* <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="tencent100424468" /> </intent-filter> </activity> <activity
* android:name="com.tencent.connect.common.AssistActivity"
* android:screenOrientation="portrait"
* android:theme="@android:style/Theme.Translucent.NoTitleBar" />
*
* 6:. 初始化配置在Application中 手动建一个MyApplication类 继承Application 将以下数据复制到
* MyApplication中 在AndroidManifest.xml进行配置 name:包名.类名
*
* PlatformConfig.setWeixin("wx967daebe835fbeac",
* "5bb696d9ccd75a38c8a0bfe0675559b3"); //微信 appid appsecret
* PlatformConfig.setSinaWeibo("3921700954","04b48b094faeb16683c32669824ebdad");
* //新浪微博 appkey appsecret PlatformConfig.setQQZone("100424468",
* "c7394704798a158208a74ab60104f0ba"); // QQ和Qzone appid appkey
* PlatformConfig.setAlipay("2015111700822536"); //支付宝 appid
* PlatformConfig.setYixin("yxc0614e80c9304c11b0391514d09f13bf"); //易信 appkey
* PlatformConfig.setTwitter("3aIN7fuF685MuZ7jtXkQxalyi",
* "MK6FEYG63eWcpDFgRYw4w9puJhzDl0tyuqWjZ3M7XJuuG7mMbO"); //Twitter appid appkey
* PlatformConfig.setPinterest("1439206"); //Pinterest appid
* PlatformConfig.setLaiwang("laiwangd497e70d4",
* "d497e70d4c3e4efeab1381476bac4c5e"); //来往 appid appkey
*
* 7:5.1 授权
*
* 首先获取UMShareAPI
*
* mShareAPI = UMShareAPI.get(this);
*
* 选取需要授权的平台,并进行授权,其中umAuthLisrener是回调监听器,需要开发者根据需求重新定义
*
*
* SHARE_MEDIA platform = SHARE_MEDIA.SINA; mShareAPI.doOauthVerify(this,
* platform, umAuthListener)
*
* private UMAuthListener umAuthListener = new UMAuthListener() {
*
* @Override public void onComplete(SHARE_MEDIA platform, int action,
* Map<String, String> data) { Toast.makeText(
* getApplicationContext(), "Authorize succeed",
* Toast.LENGTH_SHORT).show(); }
* @Override public void onError(SHARE_MEDIA platform, int action, Throwable t)
* { Toast.makeText( getApplicationContext(), "Authorize fail",
* Toast.LENGTH_SHORT).show(); }
* @Override public void onCancel(SHARE_MEDIA platform, int action) {
* Toast.makeText( getApplicationContext(), "Authorize cancel",
* Toast.LENGTH_SHORT).show(); } };
*
* 8:注意要重写onActivityResult()
* @Override protected void onActivityResult(int requestCode, int resultCode,
* Intent data) { super.onActivityResult(requestCode, resultCode,
* data); mShareAPI.onActivityResult(requestCode, resultCode, data); }
* */
//活动
private UMShareAPI umShareAPI;
final SHARE_MEDIA[] displaylist = new SHARE_MEDIA[] { SHARE_MEDIA.WEIXIN,
SHARE_MEDIA.WEIXIN_CIRCLE, SHARE_MEDIA.SINA, SHARE_MEDIA.QQ,
SHARE_MEDIA.QZONE };
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = (Button) findViewById(R.id.button);
Button button_lpgin = (Button) findViewById(R.id.button1_login);
final UMImage image = new UMImage(MainActivity_.this,
BitmapFactory.decodeResource(getResources(),
R.drawable.ic_launcher));
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
new ShareAction(MainActivity_.this).setDisplayList(displaylist)
.withText("呵呵").withTitle("title")
.withTargetUrl("http://www.baidu.com").withMedia(image)
.setListenerList(new UMShareListener() {
@Override
public void onResult(SHARE_MEDIA platform) {
Toast.makeText(MainActivity_.this,
platform + " 分享成功啦", Toast.LENGTH_SHORT)
.show();
}
@Override
public void onError(SHARE_MEDIA platform,
Throwable t) {
Toast.makeText(MainActivity_.this,
platform + " 分享失败啦", Toast.LENGTH_SHORT)
.show();
}
@Override
public void onCancel(SHARE_MEDIA platform) {
Toast.makeText(MainActivity_.this,
platform + " 分享取消了", Toast.LENGTH_SHORT)
.show();
}
}).open();
}
});
// 第三方登录
button_lpgin.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// umShareAPI = UMShareAPI.get(MainActivity_.this);
// // 使用哪个第三方平台登录
// SHARE_MEDIA platform = SHARE_MEDIA.QQ;// 登录平台
// // 匿名内部类的方式实现接口
// umShareAPI.doOauthVerify(MainActivity_.this, platform,
// new UMAuthListener() {
//
// // @Override
// public void onComplete(SHARE_MEDIA platform,
// int action, Map<String, String> data) {
// Toast.makeText(getApplicationContext(),
// "Authorize succeed", Toast.LENGTH_SHORT)
// .show();
// }
//
// @Override
// public void onError(SHARE_MEDIA platform,
// int action, Throwable t) {
// Toast.makeText(getApplicationContext(),
// "Authorize fail", Toast.LENGTH_SHORT)
// .show();
// }
//
// @Override
// public void onCancel(SHARE_MEDIA platform,
// int action) {
// Toast.makeText(getApplicationContext(),
// "Authorize cancel", Toast.LENGTH_SHORT)
// .show();
// }
// });
umShareAPI = UMShareAPI.get(MainActivity_.this);
SHARE_MEDIA platform = SHARE_MEDIA.QQ;
umShareAPI.doOauthVerify(MainActivity_.this, platform,
new UMAuthListener() {
@Override
public void onComplete(SHARE_MEDIA platform,
int action, Map<String, String> data) {
umShareAPI.getPlatformInfo(MainActivity_.this,
platform, new UMAuthListener() {
@Override
public void onError(
SHARE_MEDIA arg0, int arg1,
Throwable arg2) {
}
// 通过返回的数据得到用户信息
@Override
public void onComplete(
SHARE_MEDIA arg0, int arg1,
Map<String, String> map) {
Set<String> keySet = map
.keySet();
//测试 遍历set集合获取数据
for (String set : keySet) {
System.out
.println("key------"
+ set);
System.out.println("value-----"
+ map.get(set));
}
}
@Override
public void onCancel(
SHARE_MEDIA arg0, int arg1) {
// TODO Auto-generated method
// stub
}
});
}
@Override
public void onError(SHARE_MEDIA platform,
int action, Throwable t) {
Toast.makeText(getApplicationContext(),
"Authorize fail", Toast.LENGTH_SHORT)
.show();
}
@Override
public void onCancel(SHARE_MEDIA platform,
int action) {
Toast.makeText(getApplicationContext(),
"Authorize cancel", Toast.LENGTH_SHORT)
.show();
}
});
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
umShareAPI.onActivityResult(requestCode, resultCode, data);
}
}
----------------------------------------------------------------------------------------------------------------------
//创建的Myapplication类
package com.example;
import com.umeng.socialize.PlatformConfig;
import android.app.Application;
public class MyApplicatio extends Application {
@Override
public void onCreate() {
// TODO Auto-generated method stub
super.onCreate();
PlatformConfig.setWeixin("wx967daebe835fbeac",
"5bb696d9ccd75a38c8a0bfe0675559b3");
// 微信 appid appsecret
PlatformConfig.setSinaWeibo("3921700954",
"04b48b094faeb16683c32669824ebdad");
// 新浪微博 appkey appsecret
PlatformConfig.setQQZone("100424468",
"c7394704798a158208a74ab60104f0ba");
// QQ和Qzone appid appkey
PlatformConfig.setAlipay("2015111700822536");
// 支付宝 appid
PlatformConfig.setYixin("yxc0614e80c9304c11b0391514d09f13bf");
// 易信 appkey
PlatformConfig.setTwitter("3aIN7fuF685MuZ7jtXkQxalyi",
"MK6FEYG63eWcpDFgRYw4w9puJhzDl0tyuqWjZ3M7XJuuG7mMbO");
// Twitter appid appkey
PlatformConfig.setPinterest("1439206");
// Pinterest appid
PlatformConfig.setLaiwang("laiwangd497e70d4",
"d497e70d4c3e4efeab1381476bac4c5e");
// 来往 appid appkey}
}
}
--------------------------------------------------------------------------------------------------------