2016-06-24 10 views
0

Markerの 'icon'プロパティとしてユーザーのFacebookプロフィール画像を適用しようとしています。しかし、いくつかの未知の理由で、そうするときにNullpointer例外を受け取ります。ユーザーのFacebookプロフィールの画像をマーカーにロードしようとするとNullpointer例外が発生する

構文は正しいですが、私はちょうどあなたに影響を与えている唯一のビット(マーカーに関係しています)を表示するためにいくつかのコードを削除しました。

AccessToken accessToken = AccessToken.getCurrentAccessToken(); 
      MarkerOptions marker = new MarkerOptions().position(
        new LatLng(point.latitude, point.longitude)).title("New Marker"); 
      globalMap.addMarker(marker 
        .position(point) 
        .icon(BitmapDescriptorFactory.fromBitmap(getFacebookProfilePicture(accessToken.getUserId()))) 
        .anchor(0.5f, 1)); 
     } 
    }); 
} 

public static Bitmap getFacebookProfilePicture(String userID){ 
    Bitmap bitmap = null; 
    try { 
     URL imageURL = new URL("https://graph.facebook.com/" + userID + "/picture?type=large"); 
     bitmap = BitmapFactory.decodeStream(imageURL.openConnection().getInputStream()); 
    }catch(Exception e){ 

    } 
    return bitmap; 
} 

私は、これはlogcatが言っていることです...

icon(BitmapDescriptorFactory.fromBitmap(getFacebookProfilePicture(accessToken.getUserId()))) 

それは私に問題を与えている。このラインだと思うけど...:

java.lang.NullPointerException 
                   at maps.f.g.a(Unknown Source) 
                   at maps.ag.g$a.<init>(Unknown Source) 
                   at maps.ag.g.a(Unknown Source) 
                   at maps.ag.R.<init>(Unknown Source) 
                   at maps.ag.t.a(Unknown Source) 

答えて

1

あなたの間違いがあることですあなたは実際のネットワーク接続を確立していません。ユーザーのプロファイルイメージを読み込む前にURLConnection.Connect()メソッドを呼び出す必要があります。

try { 
    URL imageURL = new URL("https://graph.facebook.com/" + userID + "/picture?type=large"); 
    HttpURLConnection connection = (HttpURLConnection) imageUrl.openConnection(); 
    connection.setDoInput(true); 
    connection.connect(); 
    bitmap = BitmapFactory.decodeStream(connection.getInputStream()); 
catch(IOException ex) { 

} 
+0

ああ、素敵! url.openConnection();私はあなたがURLではなくimageURLを意味すると仮定します。また、私はこれを試してラップする必要がありますか? IOExceptionとMalformedURLを処理する必要があるという3つの警告があります。 – SaltySea

+0

**更新**私はそれを試して試してラップし、私はまだ同じ問題を抱えています:/ – SaltySea

+0

うーん...正しい画像のURLを使用していると確信していますか? – floyd

関連する問題