Я ищу решение довольно долгое время, и я все больше расстраиваюсь.Попытка предоставить изображение для приложений, вызывающих намерение GET_CONTET
Я хочу, чтобы мое приложение могло предоставлять контент для других приложений. Например: при использовании приложения GoogleMail вы можете добавить вложение. Откроется диалоговое окно с указанием всех приложений, которые могут предоставить файл для вложения. Мое приложение в диалоговом окне уже, потому что я определил деятельность с намерением фильтра, как это:
<intent-filter >
<action android:name="android.intent.action.GET_CONTENT" />
<action android:name="android.intent.action.PICK" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.OPENABLE" />
<data android:mimeType="image/*" />
</intent-filter>
Так что, когда вы выбираете мое приложение, он начинает свою деятельность. Эта активность позволяет пользователю выбирать фотографию и записывать ее на SD-карту. Все идет нормально. Но как я могу вернуть его правильно? Поскольку приложение в GoogleMail никогда не создано. Я возвращаю это так:
if(file!=null)
{
Intent resultIntent=new Intent();
resultIntent.setType("image/jpg");
Uri uri=Uri.fromFile(file);
//uri=Uri.parse(uri.toString().replace("file", "content"));
resultIntent.putExtra(Intent.EXTRA_STREAM, uri);
resultIntent.putExtra(Intent.EXTRA_UID, uri);
resultIntent.setData(uri);
setResult(RESULT_OK, resultIntent);
finish();
}
я бы так себе так рад, если кто-нибудь может мне помочь. Я считаю, что это просто, что я делаю неправильно, но я не могу найти ничего, что помогло бы мне. :(
С наилучшими пожеланиями
вы найти решение, которое работает? Я застрял в той же точке. 'resultIntent.putExtra (Intent.EXTRA_STREAM, uri); resultIntent.putExtra (Intent.EXTRA_UID, uri);' Не работает для меня. Но даже если я см. вложение в Gmail, он не отправит его. – philipp