2013-06-15 3 views
0

shareActionProvider를 통해 이미지를 공유하려하지만 파일을 공유하려고하는 모든 앱이 파일을 처리하지 않는 것처럼 보입니다. 선택된 앱이 열리지만 이후에는 아무 것도 볼 수 없습니다. 이미지actionProvider를 통해 이미지 공유 : 무엇이 잘못 되었나요?

다음

내가 넣어 것입니다 (즉, 스카이프 자체 열리지 만 전혀 파일을 전송하지 않습니다) 내 onCreateOptionsMenu :

getSupportMenuInflater().inflate(R.menu.menu_statistics, menu); 

ShareActionProvider mShareActionProvider = (ShareActionProvider) menu.findItem(R.id.actionbar_share_chart).getActionProvider(); 

Intent shareIntent = new Intent(Intent.ACTION_SEND); 
shareIntent.setType("image/*"); 

String root= Environment.getExternalStorageDirectory().toString(); 
File myDir = new File(root + "/charts"); 
String fname = "chart.png"; 
File file = new File(myDir, fname); 
URI uri = file.toURI(); 
shareIntent.putExtra(Intent.EXTRA_STREAM, uri.toString()); 
mShareActionProvider.setShareIntent(shareIntent); 

if(file.exists()) 
    Log.d("debugCheck", "the file exists"); 

return true; 

내가 무엇을 얻는 것은 물론

파일입니다 존재 함

내 기록에 있습니다. 그래서, 왜 그런가요? 앱을 열어도 이미지가 첨부되지 않는 이유는 무엇입니까?

답변

0

좋아, 오류를 발견했습니다. 대신 그 URI 클래스를 사용하는 나는 Uri 객체 생성해야 :

Uri screenshotUri = Uri.parse("file:///storage/sdcard0/charts/chart.png"); 

를 내가 해결 텐트

shareIntent.putExtra(Intent.EXTRA_STREAM, screenshotUri); 

케이스에 추가로 통과한다!