Articles of 截图

带有动作栏的活动的Android屏幕截图

我使用这些行来截取我的活动: View toppest = ((ViewGroup) ctx.getWindow().getDecorView().findViewById(android.R.id.content)).getChildAt(0); toppest.setDrawingCacheEnabled(true); Bitmap bmap = toppest.getDrawingCache(); Utils.saveBitmapOnSdcard(bmap); toppest.setDrawingCacheEnabled(false); 无论如何,这个截图不包含actionbar。 如何使用actionBar制作屏幕截图? 有关信息:我使用Sherlock actionbar实现windowActionBarOverlay选项为“true”。

以编程方式截取整个屏幕的截图

我正在截取如下截图: public static Bitmap takeScreenshot(Activity activity) { View view = activity.getWindow().getDecorView(); view.setDrawingCacheEnabled(true); view.buildDrawingCache(); Bitmap bitmap = view.getDrawingCache(); Rect rect = new Rect(); activity.getWindow().getDecorView().getWindowVisibleDisplayFrame(rect); int statusBarHeight = rect.top; int width = activity.getWindowManager().getDefaultDisplay().getWidth(); int height = activity.getWindowManager().getDefaultDisplay().getHeight(); Bitmap bitmap2 = Bitmap.createBitmap(bitmap, 0, statusBarHeight, width, height – statusBarHeight); view.destroyDrawingCache(); return bitmap2; } 但是我的布局中有一个Edittext。 我点击它并popup键盘,但屏幕截图不包含使用这种方式的键盘。 如何以编程方式截取屏幕也可以捕获键盘?

Android OpenGL截图

我已经搜索了很多关于在Android上截取我的OpenGL对象的截图并提出了这个解决方案。 它工作得很好,但在我的情况下,我在摄像机视图顶部有摄像机视图和opengl视图(透明背景)。 所以我想做的是获得透明背景而不是黑色的opengl截图。 正如我所说,我已经尝试过上面的链接,但它有效,但我被困在黑色背景下。 在这种特殊情况下弄清楚如何摆脱黑色背景有点复杂。 希望有人可以帮助我,如果可能的话尽快帮助我(我认为解决方案很简单,我只是错过了一些简单的事情)。 谢谢。

在ICS或JB上的任务管理器中显示自定义应用程序映像

据我所知,在Android 4.0(或更高版本)上,默认任务管理器显示程序的最后一个截图,程序图标没有左上角。 看图: 我的问题是如何将任务管理器中的应用程序图像(不是图标)更改为自定义? 不要问我为什么,我只是需要它。 经过一番研究后,我在SO上find了类似的问题: 在ICS的任务管理器中显示黑色预览屏幕 。 但它没有回答我的问题。 此外,我没有find任何API与此任务管理器一起使用。 因此我决定在程序(活动)关闭时显示自定义图像。 从活动生命周期中我发现我需要覆盖onPause方法。 所以我决定编写一个小程序。 这很容易理解: public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public void onResume() { super.onResume(); setContentView(createImageView(“/sdcard/program-image.jpg”)); } @Override public void onPause() { setContentView(createImageView(“/sdcard/task-manager-image.jpg”)); super.onPause(); } private ImageView createImageView(String pathFile) { ImageView imageView = new ImageView(getApplication()); imageView.setImageBitmap(BitmapFactory.decodeFile(pathFile)); […]

听取android中的截图动作

我是android开发的新手。 我正在制作一个应用程序,将在Android手机的屏幕截图时做出反应。 我听说android允许广播接收器检测到这样的动作,所以我在这里浏览了android开发者文档。 我认为框架开发人员忘记了或者没有实现截屏广播代码,因为他们没有在他们的文档中列出这个动作。 有没有其他方式我可以听截图采取行动?

截取当前屏幕截图

我正在Android上的一个应用程序,它将共享屏幕到另一个Android设备。这个应用程序将作为服务在后台运行。 我想捕获屏幕(当前屏幕),将其保存为JPEG并通过UDP连续发送到其他Android设备。 但我的问题是如何通过捕获帧缓冲来捕获当前屏幕。 请帮忙。

从另一个应用程序的后台服务截图(以编程方式)

当我使用浏览器时,我想保存我访问过的网站的屏幕截图。 因为有些页面将来会消失。 所以我决定做一个后台服务,当我访问网站www.site.com时,会定期制作截图。 谁可以给我任何提示,教程链接,示例,……? PS我的手机扎根了。 Android 2.1。 并且不要说这是不可能的:) 更新: 屏幕截图为JPG格式或HTML没有区别。 这种方法更容易制作。

getDrawingCache()始终返回null

我想使用DrawingCache捕获ImageView的内容。 我写了下面的代码。 iv1 = (ImageView)findViewById(R.id.iv1); iv2 = (ImageView)findViewById(R.id.iv2); iv1.setDrawingCacheEnabled(true); Bitmap myScreenshot = iv1.getDrawingCache(); iv2.setImageBitmap(myScreenshot); 但我只在屏幕上看到一个图像。 后来我才知道myScreenshot是空的 我看到很多关于同样问题的post,但没有适当的解决方案。 我认为我们必须在清单中添加任何权限? 或实现这一目的所需的root权限? 请帮我解决这个问题。

截取SurfaceView的截图

我正在开发一个简单的相机应用 我有代码截取整个活动的截图并将其写入Sd卡。 问题是Surfaceview返回黑屏。 我想知道如何独立拍摄surfaceview的截图。 这是获取整个活动屏幕截图的代码。 findViewById(R.id.screen).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { final RelativeLayout layout = (RelativeLayout) findViewById(R.id.RelativeLayout1); layout.setVisibility(RelativeLayout.GONE); Bitmap bitmap = takeScreenshot(); Toast.makeText(getApplicationContext(),”Please Wait”, Toast.LENGTH_LONG).show(); saveBitmap(bitmap); } }); } public Bitmap takeScreenshot() { View rootView = findViewById(android.R.id.content).getRootView(); rootView.setDrawingCacheEnabled(true); return rootView.getDrawingCache(); } public void saveBitmap(Bitmap bitmap) { final MediaPlayer cheer = MediaPlayer.create(PicShot.this, R.raw.shutter); […]

检测Android 4.0+上的屏幕截图尝试

我正在开发一个Android应用程序,它高度重视保护用户的数据,以便在本地设备的永久内存中保存任何内容。 为了进一步保护用户数据,我们希望每当有人试图截取活动应用程序的屏幕截图时,都会向我们的服务器发出Web服务调用。 到目前为止,我看到的解决方案包括这个片段,旨在防止截屏被截取并在用户的Toast中丢失屏幕截图失败消息。 我正在考虑的另一种方法是收听一些设备用来截取屏幕截图和电源按钮的组合(尽管三星S4等设备偏离了这种方法)。 我最后的办法是在应用程序运行时在屏幕截图库的位置使用FileObserver进行更改,但这似乎也是次优解决方案并引入了我不想拥有的权限请求。 我也无法确定图像的文件目的地。 我相信Snapchat应用程序能够在远程用户尝试截屏时提醒参与者。 对于如何实现此function,您是否有任何建议? 非官方方法也是受欢迎的。