我为此感到疯狂。我需要在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 :(得分:0)
您应该通过将Breakpoint
权限放在shareGpx
的开头来调试应用。这样您就可以检查哪个变量是null
。
截取地图的截图并非那么容易 - 您必须实施某种回调。您可以在https://developers.google.com/maps/documentation/android/reference/com/google/android/gms/maps/GoogleMap.SnapshotReadyCallback
的官方文档中找到更多信息答案 1 :(得分:0)
mLatLngList
或mMyLatLngList
或mMergedMarkers
可能为null,因为其余代码都可以。