1. 程式人生 > >使用sharesdk做分享登入

使用sharesdk做分享登入

使用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) {

        }
    });



}

}