2017-10-27 9 views
1

私はTheta Camera SDKを使って360度の画像を撮影しています。Theta 360度写真をFacebookに投稿する

私はこの写真をFacebookに投稿します。これは360 photoです。その

enter image description here

のように私は._er_injectedと拡張子を変更していますが、同じ問題が発生する。それが成功のFacebookが、ビューに掲載された

String path= "/storage/emulated/0/path/imagebitmap.jpg"; 

    SharePhoto photo = new SharePhoto.Builder() 

      .setImageUrl(Uri.fromFile(new File(path))) 
      .setCaption("") 
      .build(); 

    SharePhotoContent content = new SharePhotoContent.Builder() 
      .addPhoto(photo) 

      .build(); 
    ShareApi.share(content,shareCallback); 

また、私は、私は間違った方法でAPIを呼び出すと思うこのコード

Bitmap icon = BitmapFactory.decodeResource(getResources(),R.drawable.imagebitmap); 

    ByteArrayOutputStream stream = new ByteArrayOutputStream(); 
    icon.compress(Bitmap.CompressFormat.PNG, 100, stream); 
    byte[] byteArray = stream.toByteArray(); 

    Bundle params = new Bundle(); 


    /*spherical_metadata*/ 
     String mjson="{\"ProjectionType\": \"equirectangular\",\"CroppedAreaImageWidthPixels\": 240,\"CroppedAreaImageHeightPixels\": 240,\"FullPanoWidthPixels\": 1962,\"FullPanoHeightPixels\": 981,\"CroppedAreaLeftPixels\": 981,\"CroppedAreaTopPixels\": 490}"; 

    params.putByteArray("picture", byteArray); 
    params.putBoolean("allow_spherical_photo", true); 
    params.putString("spherical_metadata", mjson); 
    params.putString("name", "Panorama images"); 




/* make the API call */ 


    new GraphRequest(
      AccessToken.getCurrentAccessToken(), 
      "/me/photos", 
      params, 
      HttpMethod.POST, 
      new GraphRequest.Callback() { 
       public void onCompleted(GraphResponse response) { 
     /* handle the result */ 

        Log.e("@@@response", String.valueOf(response)); 
       // Toast.makeText() 


       } 
      } 
    ).executeAsync(); 

を使用してください。

答えて

0

が最後にRead this Linkによるソリューションを手に入れたし、したがって

作ら両方のリンクや変更からProjectionType、CroppedAreaImageWidthPixelsなどについて慎重に This Facebook reference

読むからこの球状についてFacebookの

そして、もっと読むのグラフAPIを呼び出します

サイズは画像の高さに合わせて(5376 * 2688)のサイズをとる画像の同じサイズです

private void sharePhotoToFacebook(){ 

    Bitmap icon = BitmapFactory.decodeResource(getResources(),R.drawable.imagebitmap); 

    ByteArrayOutputStream stream = new ByteArrayOutputStream(); 
    icon.compress(Bitmap.CompressFormat.PNG, 100, stream); 
    byte[] byteArray = stream.toByteArray(); 

    Bundle params = new Bundle(); 


    JSONObject json= new JSONObject(); 
    try { 
    json.put("ProjectionType", "equirectangular"); 
    json.put("CroppedAreaImageWidthPixels", 5376); 
    json.put("CroppedAreaImageHeightPixels", 2688); 
    json.put("FullPanoWidthPixels", 5376); 
    json.put("FullPanoHeightPixels", 2688); 
    json.put("CroppedAreaLeftPixels", 0); 
    json.put("CroppedAreaTopPixels", 0); 

    } catch (JSONException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
    } 


    JSONObject jsonObject=new JSONObject(); 
    params.putByteArray("picture", byteArray); 
    params.putBoolean("allow_spherical_photo", true); 
    params.putString("spherical_metadata", json.toString()); 




    new GraphRequest(
     AccessToken.getCurrentAccessToken(), 
     "/me/photos", 
     params, 
     HttpMethod.POST, 
     new GraphRequest.Callback() { 
      public void onCompleted(GraphResponse response) { 
     /* handle the result */ 

       Log.e("@@@response", String.valueOf(response)); 

    Toast.makeText(getApplicationContext(),"Snapshot shared On Facebook",Toast.LENGTH_SHORT).show(); 


      } 
     } 
).executeAsync(); 
} 
関連する問題