您的位置:首页 > 其它

三方登录

2015-11-28 10:19 393 查看

armeabi
httpmime-4.1.3.jar

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.bwei.test"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="14" />

<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.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<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.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

<!-- ###################声明SDK使用的相关权限###################### -->
<!-- 检测网络状态 -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!-- 获取mac地址作为用户的备用唯一标识 -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!-- 获取用户手机的IMEI,用来唯一的标识用户 -->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<!-- 缓存资源优先存入SDcard -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- 允许应用程序联网,以便向我们的服务器端发送数据 -->
<uses-permission android:name="android.permission.INTERNET" />
<!-- QQ、QQ空间所需权限 -->
<uses-permission android:name="android.permission.GET_TASKS" />

<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<meta-data
android:name="com.amap.api.v2.apikey"
android:value="aee205e5eb2579fd658e399bf627dc21" />

<activity
android:name="com.umeng.socialize.view.ShareActivity"
android:configChanges="orientation|keyboard"
android:launchMode="singleTask"
android:noHistory="true"
android:theme="@style/Theme.UMDialog"
android:windowSoftInputMode="stateAlwaysVisible|adjustResize" >
</activity>
<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" />
<!-- 100424468,如果你使用的公用账号,则不需要修改;否则修改成你在QQ开放平台申请的 APP ID -->
<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" >
</activity>

<meta-data
android:name="UMENG_APPKEY"
android:value="56491fe367e58e4ff7009f4f" >
</meta-data>

<activity
android:name="com.bwei.test.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.bwei.test.PersonActivity" >
</activity>
</application>

</manifest>


SocialSDK_QQZone_1.jar
SocialSDK_QQZone_2.jar
SocialSDK_QQZone_3.jar
SocialSDK_Sina.jar
umeng_social_sdk.jar

1 package com.bwei.test;

import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.Toast;

import com.bwei.test.R.menu;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.umeng.socialize.bean.SHARE_MEDIA;
import com.umeng.socialize.controller.UMServiceFactory;
import com.umeng.socialize.controller.UMSocialService;
import com.umeng.socialize.controller.listener.SocializeListeners.UMAuthListener;
import com.umeng.socialize.controller.listener.SocializeListeners.UMDataListener;
import com.umeng.socialize.exception.SocializeException;
import com.umeng.socialize.sso.UMQQSsoHandler;

public class MainActivity extends Activity implements OnClickListener{
private Button btn_sina,btn_qq,btn_phone;
private ImageView top_image,top_settings;
UMSocialService mController = UMServiceFactory.getUMSocialService("com.umeng.login");
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

top_image = (ImageView) findViewById(R.id.top_image);
top_settings = (ImageView) findViewById(R.id.top_settings);
top_image.setOnClickListener(this);//给登录头象加监听
top_settings.setOnClickListener(this);
btn_phone = (Button) findViewById(R.id.btn_phone);
btn_qq = (Button) findViewById(R.id.btn_qq);
btn_sina = (Button) findViewById(R.id.btn_sina);
UMQQSsoHandler qqSsoHandler = new UMQQSsoHandler(this, "100424468",
"c7394704798a158208a74ab60104f0ba");
qqSsoHandler.addToSocialSDK();

}

public void onClick1(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
//        case R.id.top_image:
//            menu.showMenu();
//            break;
//        case R.id.top_settings:

//            break;

default:
break;
}
}

public void log_qq(View v) {
login(SHARE_MEDIA.QQ);// QQ跳转到登录页面

}

public void log_sina(View v) {
login(SHARE_MEDIA.SINA);// sina跳转到登录页面

}
/**
* 附近的人
* @param v
*/
public void person(View v){
Intent intent=new Intent(MainActivity.this,PersonActivity.class);
startActivity(intent);
}

/**
* 跳转到登录页面
* 756494841@qq.com
* jing1017/*
* @param qq
*/
private void login(SHARE_MEDIA qq) {
// TODO Auto-generated method stub
mController.doOauthVerify(MainActivity.this, qq, new UMAuthListener() {

@Override
public void onStart(SHARE_MEDIA platform) {
Toast.makeText(MainActivity.this, "授权开始", Toast.LENGTH_SHORT)
.show();
}

@Override
public void onError(SocializeException e, SHARE_MEDIA platform) {
Toast.makeText(MainActivity.this, "授权失败", Toast.LENGTH_SHORT)
.show();
btn_qq.setVisibility(View.VISIBLE);
btn_sina.setVisibility(View.VISIBLE);
}

@Override
public void onComplete(Bundle value, SHARE_MEDIA platform) {
// 获取uid
String uid = value.getString("uid");
if (!TextUtils.isEmpty(uid)) {
// uid不为空,获取用户信息
getUserInfo(platform);// 得到授权
} else {
Toast.makeText(MainActivity.this, "授权失败...",
Toast.LENGTH_LONG).show();
//设置登录图片可见
top_image.setVisibility(View.VISIBLE);
btn_sina.setVisibility(View.VISIBLE);

}
}

@Override
public void onCancel(SHARE_MEDIA platform) {
Toast.makeText(MainActivity.this, "授权取消", Toast.LENGTH_SHORT)
.show();
}
});
}

/**
* 得到授权
*
* @param platform
*/
protected void getUserInfo(SHARE_MEDIA platform) {
// TODO Auto-generated method stub
mController.getPlatformInfo(MainActivity.this, platform,
new UMDataListener() {

@Override
public void onStart() {

}

@Override
public void onComplete(int status, Map<String, Object> info) {
//                        tv_name.setVisibility(View.VISIBLE);
//                        image.setVisibility(View.VISIBLE);
//设置登录图片可见
btn_qq.setVisibility(View.INVISIBLE);
btn_sina.setVisibility(View.INVISIBLE);
// 迭代MAP得到用户信息
if (info != null) {
System.out.println(info.toString());
Set<Entry<String, Object>> set = info.entrySet();
if (set != null) {
Iterator<Entry<String, Object>> iterator = set
.iterator();
while (iterator.hasNext()) {
Map.Entry entry = iterator.next();

Object key = entry.getKey();
Object value = entry.getValue();
System.out.println(key.toString());
//                                    if (key.equals("screen_name")) {
//                                        tv_name.setText(entry.getValue()
//                                                .toString());
//                                    } else if (key.equals("profile_image_url")) {
//                                        ImageLoader.getInstance().displayImage(
//                                                entry.getValue().toString(),
//                                                image);
//                                        ImageLoader.getInstance().displayImage(
//                                                entry.getValue().toString(),
//                                                top_image);
//                                    }
}
}
}

}
});
}

@Override
public void onClick(View v) {
// TODO Auto-generated method stub

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: