嵌入Android截图库

时间:2017-05-29 17:18:24

标签: android screenshot

目前我正在开发一款应该从设备屏幕截取屏幕截图的应用程序。

我读到了Android Screenshot Library,听起来很有希望。

我想在我的应用中开始使用它。问题是我很难将其嵌入到我的项目中。

我尝试将项目文件夹(asl-1.2)导入libs模块内的app目录。

我关注this帖子,但它仍然无法帮助我。

问题是项目没有与我的app模块链接,因此我不能使用驻留在库中的类。

以下是项目层次结构的屏幕截图:

https://i.gyazo.com/f496e790d5ab06fc4c785df77e0984bd.png

如您所见,ScreenshotService.java文件标有红色图标,字母'J'

2 个答案:

答案 0 :(得分:0)

图书馆需要截取屏幕截图吗?使用以下函数函数获取任何视图的位图。

public Bitmap getBitmapFromView(View view) {
    Bitmap returnedBitmap = Bitmap.createBitmap(view.getWidth(), view.getHeight(), Bitmap.Config.ARGB_8888);
         Canvas canvas = new Canvas(returnedBitmap);
    Drawable bgDrawable =view.getBackground();
    if (bgDrawable!=null)
        bgDrawable.draw(canvas);
    else
        canvas.drawColor(Color.WHITE);
    view.draw(canvas);
 return returnedBitmap;
}

答案 1 :(得分:0)

  

我读到了关于Android截图库的内容,听起来很有希望。

该代码尚未在六年中更新。 AFAIK,它要求用户安装USB线和Android SDK(因为它依赖于开发人员工具)。

在Android 5.0及更高版本中,您可以使用媒体投影API截取屏幕截图。

  

我尝试将项目文件夹(asl-1.2)导入app模块内的libs目录。

那不行。 libs/用于裸JAR文件,例如遗留Java代码。

将其内容直接合并到app模块中,或为该代码设置a separate library module。最有可能的是,该代码需要进行大量重组,才能由Android Studio和现代NDK构建。

或者,不要使用该代码,恕我直言是最佳答案。