Android 从SD卡上传图像到FaceBook

Android 从SD卡上传图像到FaceBook,android,facebook,Android,Facebook,使用Android 2.1,我如何将图像上传到Facebook的墙上?图像存储在SD卡中。您应该使用Facebook API。 然后使用以下代码: byte[] data = null; try { FileInputStream fis = new FileInputStream(PATH_TO_FILE); Bitmap bi = BitmapFactory.decodeStream(fis); ByteArrayOutputStream baos = ne

使用Android 2.1,我如何将图像上传到Facebook的墙上?图像存储在SD卡中。

您应该使用Facebook API。 然后使用以下代码:

 byte[] data = null;
 try {
     FileInputStream fis = new FileInputStream(PATH_TO_FILE);
     Bitmap bi = BitmapFactory.decodeStream(fis);
     ByteArrayOutputStream baos = new ByteArrayOutputStream();
     bi.compress(Bitmap.CompressFormat.JPEG, 100, baos);
     data = baos.toByteArray();  
  } catch (FileNotFoundException e) { 
     e.printStackTrace();
     Log.d("onCreate", "debug error  e = " + e.toString());
  }     

     Bundle params = new Bundle(); 
     params.putString("method", "photos.upload");  
     params.putByteArray("picture", data);

     Facebook facebook = new Facebook(FACEBOOK_APP_ID);
     AsyncFacebookRunner mAsyncRunner = new AsyncFacebookRunner(facebook);
     mAsyncRunner.request(null, params, "POST", new RequestListener() {

        public void onMalformedURLException(MalformedURLException e, Object state) {
            Log.d("request RequestListener", "debug onMalformedURLException");
        }

        public void onIOException(IOException e, Object state) {
            Log.d("request RequestListener", "debug onIOException");
        }

        public void onFileNotFoundException(FileNotFoundException e, Object state) {
            Log.d("request RequestListener", "debug onFileNotFoundException");
        }

        public void onFacebookError(FacebookError e, Object state) {
            Log.d("request RequestListener", "debug onFacebookError");
        }

        public void onComplete(String response, Object state) {
             Log.d("request RequestListener", "debug onComplete");
        }
     }, null);
确保您的应用程序具有internet和SD卡读取权限