2016-07-03 2 views
0

В андроиде я не могу обмениваться изображениями в формате jpeg, а также в формате png. Пожалуйста, помогите и исправить мой кодОшибка при совместном использовании изображений в android

всякий раз, когда я код для использования дает исключение «Формат файла не поддерживается»
Это мой код:

Uri imageUri = Uri.parse("android.resource://com.parekh.shareimage/drawable"); 
    Intent shareIntent = new Intent(); 
    shareIntent.setAction(Intent.ACTION_SEND); 
    shareIntent.putExtra(Intent.EXTRA_TEXT, "My sample image text"); 
    shareIntent.putExtra(Intent.EXTRA_STREAM, imageUri); 
    shareIntent.setType("image/*"); 
    startActivity(shareIntent); 
+1

, что код указывает на каталог – Chisko

+0

Помимо этого, относительно небольшое число приложений обрабатывать 'android.resource' схему хорошо. И не каждое приложение будет обрабатывать * оба * 'EXTRA_TEXT' * и *' EXTRA_STREAM'. – CommonsWare

+0

Pls correct my code – Parekh

ответ

0

магазин ваш рисуем изображение в вас внутреннее хранилище и выберите то изображение , Этот способ поможет вам.

try{ 

     Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.shareforma); 
     String extStorageDirectory = Environment.getExternalStorageDirectory().toString(); 
     File file = new File(extStorageDirectory, "forma.PNG"); 
     FileOutputStream outStream = new FileOutputStream(file); 
     bm.compress(Bitmap.CompressFormat.PNG, 100, outStream); 
     outStream.flush(); 
     outStream.close(); 
    } 
    catch (IOException e) { 
     e.printStackTrace(); 
    } 
    String msgText = "Sample Message"; 

    Intent shareIntent = new Intent(android.content.Intent.ACTION_SEND); 
    shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); 
    shareIntent.setType("image/*"); 

    //set your message 
    shareIntent.putExtra(android.content.Intent.EXTRA_TEXT, msgText); 

    String imagePath = Environment.getExternalStorageDirectory() + File.separator + "image_name.jpg"; 

    File imageFileToShare = new File(imagePath); 

    Uri uri = Uri.fromFile(imageFileToShare); 

    shareIntent.putExtra(Intent.EXTRA_STREAM, uri); 

    startActivity(Intent.createChooser(shareIntent, msgText)); 
+0

Спасибо Kumar. Теперь его рабочий :) – Parekh

+0

Bro if i имеют около 50 изображений, то как я пройду ** R.drawable.shareforma ** ??? Нужна помощь – Parekh

+0

Для одного изображения этот метод будет подходящим. Для нескольких изображений вы должны пойти с другими альтернативами, попробуйте сохранить изображение в sqlite db и извлечь или попытаться использовать службу firebase или parse cloud. –

Смежные вопросы