在Android開發過程中,很多時候,我們都需要爲我們的軟件添加一個微博分享的功能。
今天,我們就嘗試爲我們的軟件添加一個微博分享的功能。
第一步:去新浪微博官方申請AppKey,此部分不是今天的內容,請自行百度或Google。
第二步:下載新浪提供的jar包。我們下載回來的SDK目錄是這樣的
我們需要的是weibo.sdk.android.sso目錄下的weibo.sdk.android.sso.jar
第三步:開始我們的開發路程。
1) 新建一個Android項目
2) 將weibo.sdk.android.sso.jar拷貝到libs目錄裏,Eclipse會自動添加到Build Path路徑裏,不需要我們再手動添加
3) 接下來,編寫代碼
MainActivity.java關鍵代碼
Weibo mWeibo = Weibo.getInstance(CONSUMER_KEY, REDIRECT_URL);
//請替換爲自己的AppKey和Redirect_url
mWeibo.authorize(MainActivity.this, new AuthDialogListener());
class AuthDialogListener implements WeiboAuthListener {
@Override
public void onComplete(Bundle values) {
String token = values.getString(“access_token”);
String expires_in = values.getString(“expires_in”);
editor = pre.edit();
editor.putString(“token”, token);
editor.putString(“expires_in”, expires_in);
editor.commit();
}
@Override
public void onWeiboException(WeiboException e) {
Toast.makeText(getApplicationContext(),
“Auth exception : ” + e.getMessage(), Toast.LENGTH_LONG)
.show();
}
@Override
public void onError(WeiboDialogError e) {
Toast.makeText(getApplicationContext(),
“Auth error : ” + e.getMessage(), Toast.LENGTH_LONG).show();
}
@Override
public void onCancel() {
Toast.makeText(getApplicationContext(), “Auth cancel : “,
Toast.LENGTH_LONG).show();
}
}
ShareAct.java關鍵代碼
access_token = new Oauth2AccessToken(pre.getString(“token”, “”),
pre.getString(“expires_in”, “0″));
StatusesAPI api = new StatusesAPI(access_token);
/**
* upload(String content, String file, String lat, String lon, RequestListener listener)
* content爲要分享的內容
* file爲要分享圖片路徑
* lat和lng爲經緯度,可根據自己的需要設置
* listener爲監聽器,用於監聽發佈結果
*/
api.upload(et1.getText().toString(), “mnt/sdcard/pic1.jpg”,”o”, “o”, this);
4) 最後,請不要忘記添加權限。
<uses-permission android:name=“android.permission.INTERNET” />
<uses-permission android:name=“android.permission.ACCESS_WIFI_STATE”/>
<uses-permission android:name=“android.permission.WRITE_APN_SETTINGS”/>
<uses-permission android:name=“android.permission.ACCESS_NETWORK_STATE”/>
5) 運行,大功告成。