2014-01-27 3 views
0

Я схожу с ума от этого. Мне нужно поделиться экраном изображения на facebook.Поделиться изображением на facebook

Это мой код сейчас:

if(mLatLngList.isEmpty() && mMyLatLngList.isEmpty() && (mMergedMarkers == false)) { 
     Toast.makeText(MainActivity.this, "Importa o disegna un percorso", Toast.LENGTH_SHORT).show(); 
     return; 
    } 

    Bitmap originalBitmap = screenShot(findViewById(android.R.id.content).getRootView()); 

    String pathofBmp = MediaStore.Images.Media.insertImage(getContentResolver(), originalBitmap,"title", null); 
    Uri bmpUri = Uri.parse(pathofBmp); 

    Intent shareIntent = new Intent(Intent.ACTION_SEND); 
    shareIntent.setType("image/jpeg"); 
    shareIntent.putExtra(Intent.EXTRA_STREAM, bmpUri); 
    shareIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    startActivity(Intent.createChooser(shareIntent, "Share")); 

private Bitmap screenShot(View view) { 
    Bitmap bitmap = Bitmap.createBitmap(view.getWidth(), 
      view.getHeight(), Bitmap.Config.ARGB_8888); 
    Canvas canvas = new Canvas(bitmap); 
    view.draw(canvas); 
    return bitmap; 
} 

Я редактировал пост. С помощью этого кода я могу поделиться изображением экрана на facebook, но карта все черная! >. <

+0

Это может помочь людям быстрее ответить на ваш вопрос, если вы предоставите содержимое LogCat, которое показывает ошибку –

+0

Сообщение отредактировано .... – Loris

+0

... Итак, где же журналы? –

ответ

0

Вы должны отладить приложение, поставив Breakpoint прямо на начало shareGpx. Таким образом, вы сможете проверить, какая переменная равна null.

Снять скриншоты с картами не так просто - вам нужно реализовать определенный обратный вызов. Вы можете найти более подробную информацию в официальной документации на https://developers.google.com/maps/documentation/android/reference/com/google/android/gms/maps/GoogleMap.SnapshotReadyCallback

+0

Я отредактировал сообщение. – Loris

+0

Вы проверили, работает ли 'screenShot()' правильно? –

+0

Изображение правильно размещено на facebook. В моем приложении я использую GoogleMap, но карта является общей в общем изображении :(Я думаю, потому что карта «не является частью» getRootView() ... – Loris

0

mLatLngList или mMyLatLngList или mMergedMarkers может быть пустым, так как остальная часть кода в порядке.

+0

Я отредактировал сообщение. – Loris

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