[英]Android - Fabric.io Twitter REST API profile image / picture
有沒有人知道是否有辦法通過應用程序提取已簽名的用戶個人資料圖片,以便在他們瀏覽時將其放在ActionBar上?
提示,提示,示例,下載都歡迎:)
如果你可以幫助我,請假設我對基本Java之外的任何東西都知之甚少!
再次,謝謝人們x
您可以使用/1.1/users/show.json
獲取用戶的個人資料圖像。 您可以參考Twitter數據的REST API URL 。
通過擴展TwitterApiClient
我們可以從URL中檢索Twitter數據。
class MyTwitterApiClient extends TwitterApiClient {
public MyTwitterApiClient(TwitterSession session) {
super(session);
}
public UsersService getUsersService() {
return getService(UsersService.class);
}
}
interface UsersService {
@GET("/1.1/users/show.json")
void show(@Query("user_id") Long userId,
@Query("screen_name") String screenName,
@Query("include_entities") Boolean includeEntities,
Callback<User> cb);
}
接下來,獲取UsersService
並調用其show方法,傳入已定義的查詢參數。 我根據記錄的參數定義了查詢參數。
new MyTwitterApiClient(session).getUsersService().show(12L, null, true,
new Callback<User>() {
@Override
public void success(Result<User> result) {
Log.d("twittercommunity", "user's profile url is "
+ result.data.profileImageUrlHttps);
}
@Override
public void failure(TwitterException exception) {
Log.d("twittercommunity", "exception is " + exception);
}
});
禮貌: https : //twittercommunity.com/t/android-get-user-profile-image/30579/2
這就是我開始工作的方式:
TwitterApiClient twitterApiClient = TwitterCore.getInstance().getApiClient();
twitterApiClient.getAccountService().verifyCredentials(false,false, new Callback<User>() {
@Override
public void success(Result<User> userResult) {
String name = userResult.data.name;
String profilebannerurl = userResult.data.profileBannerUrl;
String profileurl = userResult.data.profileImageUrl;
}
@Override
public void failure(TwitterException e) {
}
});
我將這段代碼放在我的LoginButton回調方法中:
loginButton.setCallback(new Callback<TwitterSession>() {
@Override
public void success(Result<TwitterSession> result) { <insert here> }
我用自定義按鈕做了這個,這是由它的onClick監聽器執行的代碼:
TwitterAuthConfig authConfig = new TwitterAuthConfig(TWITTER_API_KEY, TWITTER_API_SECRET);
Fabric.with(activity, new Twitter(authConfig));
TwitterCore.getInstance().getApiClient().getAccountService().verifyCredentials(false, false, new com.twitter.sdk.android.core.Callback<User>() {
@Override
public void success(Result<User> result) {
Log.d(TAG, "Twitter log in success");
String userName = result.data.screenName;
int userId = result.data.id;
String pictureUrl = result.data.profileImageUrl;
String coverUrl = result.data.profileBannerUrl;
}
@Override
public void failure(TwitterException e) {
Log.d(TAG, "Twitter log in error : " + e.getMessage());
}
});
我應該要求用戶授權訪問您的應用並在他接受時登錄。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.