android-将图片从SDCard上传到FaceBook

借助Android 2.1,如何将图像上传到Facebook墙?图像存储在SDCard中.

解决方法:

您应该使用Facebook API http://developers.facebook.com/docs/guides/mobile/#android.
然后使用以下代码

 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);

确保您的应用程序有权访问互联网和sdcard

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...