package com.example.share_;
import java.util.Map;
import android.app.Activity;
import android.content.Intent;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;
import com.umeng.socialize.ShareAction;
import com.umeng.socialize.UMAuthListener;
import com.umeng.socialize.UMShareAPI;
import com.umeng.socialize.UMShareListener;
import com.umeng.socialize.bean.SHARE_MEDIA;
import com.umeng.socialize.media.UMImage;
public class MainActivity extends Activity {
final SHARE_MEDIA[] displaylist = new SHARE_MEDIA[] { SHARE_MEDIA.WEIXIN,
SHARE_MEDIA.WEIXIN_CIRCLE, SHARE_MEDIA.SINA, SHARE_MEDIA.QQ,
SHARE_MEDIA.QZONE, SHARE_MEDIA.DOUBAN };
private UMShareAPI mShareAPI;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
/**
* 分享
*/
public void share(View v) {
UMImage image = new UMImage(MainActivity.this,
BitmapFactory.decodeResource(getResources(), R.drawable.boy_3));
new ShareAction(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();
}
/**
* 登录
*
* @param v
*/
public void login(View v) {
// 获取UMShareAPI
mShareAPI = UMShareAPI.get(this);
// 使用哪个平台账号登录
SHARE_MEDIA platform = SHARE_MEDIA.QQ;
mShareAPI.doOauthVerify(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();
mShareAPI.getPlatformInfo(MainActivity.this, platform,
new UMAuthListener() {
@Override
public void onError(SHARE_MEDIA arg0, int arg1,
Throwable arg2) {
// TODO Auto-generated method stub
}
@Override
public void onComplete(SHARE_MEDIA arg0, int arg1,
Map<String, String> arg2) {
Set<String> keySet = arg2.keySet();
for (String string : keySet) {
if ("screen_name".equals(string)) {
String value = arg2.get(string);
tv_success.setText(value);
}
if ("profile_image_url".equals(string)) {
String value = arg2.get(string);
instance.displayImage(value, iv_success);
}
}
}
@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);
mShareAPI.onActivityResult(requestCode, resultCode, data);
}
}
第三方登录-------activity
最新推荐文章于 2023-07-25 22:37:02 发布