2016-07-13 3 views
0

私はFacebookから写真を持ち込むことをユーザーに許可しようとしているAndroidアプリを構築しています。私はGraphRequestからURLを取得した後、私はグライドを使用してImageButtonに画像をロードしようとしていますが、エラーD/skia: --- skImageDecoder::Factory returned nullが続きます。私のコードは次のとおりです。Android:Glideを使用してFacebookの写真のURLをロードする

EDIT - 申し訳ありませんが、私は実際に質問をしなかったことを申し出ました。 Facebookの写真をロードする正しい方法は誰にでも分かりますか?ありがとう!

+0

正当なURLを取得してもよろしいですか? URLをロードする前にログに記録してください。 – VM4

+0

私が返すURLは次のとおりです: 'https://www.facebook.com/photo.php?fbid= {IDRemoved}&set = a.1376408195963079.1073741825.100007817343671&type = 3' – Nick

答えて

3

photos{link}photos{source}に切り替えることで、実際の送信元URLを返すことで問題を解決できました。改訂コードは次のとおりです。

GraphRequest request = GraphRequest.newMeRequest(
     AccessToken.getCurrentAccessToken(), 
     new GraphRequest.GraphJSONObjectCallback() { 
      @Override 
      public void onCompleted(JSONObject object, GraphResponse response) { 
       try { 
        String url = object.getJSONObject("photos").getJSONArray("data").getJSONObject(0).getString("source"); 
        Glide.with(UserSettingsActivity.this).load(url).into(userOne); 
       } catch (Exception e) { 
        e.printStackTrace(); 
       } 
      } 
     }); 
Bundle parameters = new Bundle(); 
parameters.putString("fields","id,photos{source}"); 
request.setParameters(parameters); 
request.executeAsync(); 
関連する問題