簡體   English   中英

是否可以不處理來自Facebook和Google登錄SDK(用於Android)的個人資料圖片?

[英]Is it possible to handle no profile picture from Facebook and Google login SDK for android?

目前,我正在使用以下方法獲取Facebook和Google個人資料圖片:

谷歌:

    private void updateUI(GoogleSignInAccount acct) {
    if (acct != null) {
        Uri personPhoto = acct.getPhotoUrl();
        if (!(Uri.EMPTY.equals(personPhoto)) && personPhoto != null) {
            editor.putString("imgUrl", personPhoto.toString());
        }
    }

Facebook的:

    private void facebookLogin() {
    LoginManager.getInstance().registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
        @Override
        public void onSuccess(LoginResult loginResult) {
            GraphRequest request = GraphRequest.newMeRequest(
                    loginResult.getAccessToken(),
                    new GraphRequest.GraphJSONObjectCallback() {
                        @Override
                        public void onCompleted(JSONObject object, GraphResponse response) {
                            try {

                                String userId = object.getString("id");
                                String imgUrl = "https://graph.facebook.com/" + userId + "/picture?type=large";
                            } catch (org.json.JSONException e) {
                                Log.e("", e.getMessage(), e);
                            }

                        }
                    });
            Bundle parameters = new Bundle();
            parameters.putString("fields", "id,name,email,gender,birthday,first_name, last_name,picture");
            request.setParameters(parameters);
            request.executeAsync();
        }

        @Override
        public void onCancel() {
        }

        @Override
        public void onError(FacebookException error) {
            Toast.makeText(getApplicationContext(), "failed " + error.toString(),
                    Toast.LENGTH_LONG).show();
        }
    });
}

無論如何,使用此方法一切正常,直到用戶實際上沒有個人資料圖片為止。 它不會返回null或我可以處理的東西。
這就是他們在用戶沒有圖片時給出的圖片

Facebook: 圖片

Google: 圖片

Facebook的圖片字段具有is_silhouette屬性,請參閱https://developers.facebook.com/docs/graph-api/reference/profile-picture-source/

而且Google似乎有一個叫做isDefault東西,請參閱如何檢查Google User的圖像是默認圖像還是上載的圖像?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM