使用sharesdk做分享登入
阿新 • • 發佈:2019-02-08
使用shareSDK做第三方分享登入
註冊和整合的程式碼去sharesdk網站中找取
package com.bwei.share;
import java.text.SimpleDateFormat;
import java.util.HashMap;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.os.Bundle;
import android.telephony.TelephonyManager;
import android.view.View;
import cn.sharesdk.framework.Platform;
import cn.sharesdk.framework.PlatformActionListener;
import cn.sharesdk.framework.ShareSDK;
import cn.sharesdk.onekeyshare.OnekeyShare;
import cn.sharesdk.tencent.qq.QQ;
public class MainActivity extends Activity {
private TelephonyManager tm; private String imi; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ShareSDK.initSDK(this); } public void share(View v){ OnekeyShare oks = new OnekeyShare(); //關閉sso授權 oks.disableSSOWhenAuthorize(); // 分享時Notification的圖示和文字 2.5.9以後的版本不呼叫此方法 //oks.setNotification(R.drawable.ic_launcher, getString(R.string.app_name)); // title標題,印象筆記、郵箱、資訊、微信、人人網和QQ空間使用 // oks.setTitle(getString(R.string.share)); // titleUrl是標題的網路連結,僅在人人網和QQ空間使用 oks.setTitleUrl("http://sharesdk.cn"); // text是分享文字,所有平臺都需要這個欄位 oks.setText("我是1409B分享的,,哈哈哈"); // imagePath是圖片的本地路徑,Linked-In以外的平臺都支援此引數 //oks.setImagePath("/sdcard/test.jpg");//確保SDcard下面存在此張圖片 // url僅在微信(包括好友和朋友圈)中使用 oks.setUrl("http://sharesdk.cn"); // comment是我對這條分享的評論,僅在人人網和QQ空間使用 oks.setComment("我是1409B分享的,,哈哈哈"); // site是分享此內容的網站名稱,僅在QQ空間使用 oks.setSite(getString(R.string.app_name)); // siteUrl是分享此內容的網站地址,僅在QQ空間使用 oks.setSiteUrl("http://sharesdk.cn"); // 啟動分享GUI oks.show(this); } public void QQ(View v){ Platform platform11 = ShareSDK.getPlatform(QQ.NAME); //platform11.SSOSetting(true); platform11.authorize(); platform11.showUser(null);//必須要加的要不然不行!這個才是授權的! tm = (TelephonyManager) MainActivity.this.getSystemService(TELEPHONY_SERVICE); imi = tm.getDeviceId(); platform11.setPlatformActionListener(new PlatformActionListener() { @Override public void onError(Platform platform11, int arg1, Throwable arg2) { //彈出失敗視窗 } @SuppressLint("SimpleDateFormat") @Override public void onComplete(Platform platform11, int arg1, HashMap<String, Object> arg2) { System.out.println("登入成功。。。。"); /*String userId = platform11.getDb().getUserId(); String userName = platform11.getDb().getUserName(); String token = platform11.getDb().getToken(); long expiresTime = platform11.getDb().getExpiresTime(); SimpleDateFormat sdf3 = new SimpleDateFormat("yyyy-MM-dd HH:mm"); System.out.println("userId "+userId); System.out.println("userName "+userName); System.out.println("token "+token); System.out.println("expiresTime "+sdf3.format(expiresTime)); HttpUties ht=new HttpUties(); ht.UplodePhotos(1+"", userId+"", userName+"", token+"", expiresTime+"", imi+"");*/ } @Override public void onCancel(Platform arg0, int arg1) { } }); }
}