当我使用浏览器时,我想保存我访问过的网站的屏幕截图。因为有些页面将来会消失。所以我决定做一个后台服务,当我访问网站www.site.com时,会定期制作截图。谁可以给我任何提示,教程链接,示例,......?
P.S。我的手机扎根了。 Android 2.1。并且不要说这是不可能的:))
更新
JPG格式或HTML屏幕截图没有区别。这种方法更容易制作。
答案 0 :(得分:10)
Process sh = Runtime.getRuntime().exec("su", null,null);
OutputStream os = sh.getOutputStream();
os.write(("/system/bin/screencap -p " + "/sdcard/img.png").getBytes("ASCII"));
os.flush();
os.close();
sh.waitFor();
then read img.png as bitmap and convert it jpg as follows
Bitmap screen = BitmapFactory.decodeFile(Environment.getExternalStorageDirectory()+ File.separator +"img.png");
//my code for saving
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
screen.compress(Bitmap.CompressFormat.JPEG, 15, bytes);
//you can create a new file name "test.jpg" in sdcard folder.
File f = new File(Environment.getExternalStorageDirectory()+ File.separator + "test.jpg");
f.createNewFile();
//write the bytes in file
FileOutputStream fo = new FileOutputStream(f);
fo.write(bytes.toByteArray());
// remember close de FileOutput
fo.close();
答案 1 :(得分:2)
https://market.android.com/details?id=com.edwardkim.android.screenshotitfullnoroot&hl=en
不需要扎根。
http://maketecheasier.com/take-screenshots-on-android-phone/2010/07/16
需要扎根。
最糟糕的情况是,您可以在通过USB插入时使用Android SDK并拍摄屏幕截图。