Для этого необходимо использовать Фильтр намерений .
<activity android:name=".Activity" android:label="@string/app_name" android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="image/*" />
</intent-filter>
</activity>
Если добавить фильтр намерений с данными, категориями и данными, как указано выше, он запросит приложение, есливам нужно поделиться некоторыми фотографиями, например, обмениваться изображением вне приложения из галереи изображений.
Если вы выберете свое приложение, оно перенаправит элемент управления на вашу деятельность.используя:
try{
Uri imageUri = (Uri) getIntent().getExtras().get(Intent.EXTRA_STREAM);
Cursor cursor = getContentResolver().query(imageUri, new String[] { android.provider.MediaStore.Images.ImageColumns.DATA }, null, null, null);
cursor.moveToFirst();
}catch(Exception e){
Log.v("Exception eeee", ""+e);
}
Теперь курсор будет содержать выбранное изображение .
Это для выбора изображения, вы можете использовать то же самое для Видео ,необходимо изменить mimitype в файле манифеста Intent Filter.