2015-06-23 13 views
6

Tôi đang sử dụng chức năng chia sẻ cho ứng dụng xã hội sử dụng Intent.Sự cố chia sẻ Instagram: đôi khi tôi nhận được thông báo "Không thể tải hình ảnh"

Tôi gặp sự cố khi chia sẻ hình ảnh trong Instagram.

Một số lần tôi nhận được thông báo

Không thể tải ảnh.

Đây là mã của tôi:

String path="content://media/external/images/media/32872"; 

Intent shareIntent = new Intent(); 
shareIntent.setType("image/jpeg"); 
shareIntent.setAction(Intent.ACTION_SEND); 
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(path)); 
shareIntent.setPackage("com.instagram.android"); 
startActivity(shareIntent); 

Làm thế nào để thoát khỏi vấn đề này?

Trả lời

3

nếu bạn có tập tin sau đó sử dụng mã dưới đây để chia sẻ hình ảnh,

private void shareIntagramIntent(String path) { 
     Intent intent = getActivity().getPackageManager() 
       .getLaunchIntentForPackage("com.instagram.android"); 
     if (intent != null) { 
      Intent shareIntent = new Intent(); 
      shareIntent.setAction(Intent.ACTION_SEND); 
      shareIntent.setPackage("com.instagram.android"); 
      try { 
       shareIntent.putExtra(Intent.EXTRA_STREAM, 
         Uri.parse("file://" + path)); 
      } catch (Exception e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 
      shareIntent.setType("image/jpeg"); 

      startActivity(shareIntent); 
     } else { 
      // bring user to the market to download the app. 
      // or let them choose an app? 
      intent = new Intent(Intent.ACTION_VIEW); 
      intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
      intent.setData(Uri.parse("market://details?id=" 
        + "com.instagram.android")); 
      startActivity(intent); 
     } 
    } 
+1

Cảm ơn bạn đã trả lời của bạn. Tôi cũng đã sử dụng mã này nhưng nó không hoạt động. –

+2

Hôm nay tôi đã có cùng một vấn đề với instagram, nhưng ở trên mã làm việc cho tôi. điều này quan trọng là Uri.parse ("file: //" + path). – NullByte

+0

Tốt. nhưng con đường nào bạn đã vượt qua ở Uri? bạn có thể chia sẻ đường dẫn của bạn không? @NullByte –

0

Hãy thử điều này:

File filepath = Environment.getExternalStorageDirectory(); 
cacheDir = new File(filepath.getAbsolutePath() + "/LikeIT/"); 
cacheDir.mkdirs(); 
Intent intent = new Intent(); 
intent.setType("image/*");  
intent.setAction(Intent.ACTION_SEND); 
intent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + filepath.getAbsolutePath())); 
activity.startActivity(intent);   
Các vấn đề liên quan