Tôi đang sử dụng Genymotion để chạy ứng dụng Android. Có ai có thể cho tôi biết cách chụp ảnh màn hình trong Genymotion không?
Tôi đang sử dụng Genymotion để chạy ứng dụng Android. Có ai có thể cho tôi biết cách chụp ảnh màn hình trong Genymotion không?
Câu trả lời:
Tuyên bố từ chối trách nhiệm: Tôi thuộc cùng một công ty với nhóm Genymotion.
Tính năng này được bao gồm trong sản phẩm. Đây là một trong những tính năng trả phí của tiện ích phát màn hình. Xem trang giá ở đây .
Hai cách để truy cập nó:
Sau khi máy ảo của bạn được khởi động, hãy mở tiện ích phát màn hình
Sau đó, chụp ảnh bằng nút chuyên dụng
CẬP NHẬT: Bạn có dưới đây các cách khác để chụp ảnh màn hình bằng Trình theo dõi thiết bị Android hoặc dòng lệnh
Nếu bạn đang sử dụng Android Studio hoặc Eclipse, bạn chỉ cần nhấp vào nút "Chụp màn hình" trong Android DDMS:
Bạn có thể sử dụng adb để lấy ảnh chụp màn hình từ dòng lệnh:
adb shell screencap -p | perl -pe 's/\x0D\x0A/\x0A/g' > screen.png
Bài viết này có các chi tiết: http://blog.shvetsov.com/2013/02/grab-android-screenshot-to-computer-via.html
Để làm cho cuộc sống của tôi dễ dàng hơn, tôi đã tạo một bí danh trong .bash_profile:
alias screenshot="adb shell screencap -p | perl -pe 's/\x0D\x0A/\x0A/g' > ~/Downloads/android_screenshot.png"
Bây giờ tôi có thể nhập screenshot
Terminal và nhận được ảnh chụp màn hình của trình giả lập hiện đang chạy trong thư mục Tải xuống của tôi.
adb server is out of date. killing...
lỗi khi thử điều này. Tôi cố định nó bằng cách sử dụng adb
bao gồm trong Genymotion:/Applications/Genymotion.app/Contents/MacOS/tools/adb shell screencap -p | perl -pe 's/\x0D\x0A/\x0A/g' > ~/Downloads/android_screenshot.png
Sử dụng các lệnh này:
Các cửa sổ:
C:\"Program Files"\Genymobile\Genymotion\tools\adb shell screencap -p "/mnt/sdcard/output.png" && C:\"Program Files"\Genymobile\Genymotion\tools\adb pull "/mnt/sdcard/output.png" "C:\output.png" && C:\"Program Files"\Genymobile\Genymotion\tools\adb shell rm "/mnt/sdcard/output.png"
C:\output.png
; nếu không, hãy thay đổi nó thành bất kỳ con đường nào bạn thích.OS X:
/Applications/Genymotion.app/Contents/MacOS/tools/adb shell screencap -p | perl -pe 's/\x0D\x0A/\x0A/g' > ~/Desktop/Android_Screenshot_$(date +%Y-%m-%d-%H-%M-%S).png
adb shell screencap -p "/mnt/sdcard/output.png" && adb pull "/mnt/sdcard/output.png" . && adb shell rm "/mnt/sdcard/output.png"
adb pull
thư mục thành thư mục mà bạn thực sự có quyền ghi, để đảm bảo điều này hoạt động. Nếu không, giải pháp khá đơn giản và thanh lịch, cảm ơn!
error: cannot connect to daemon: cannot connect to 127.0.0.1:5037 (10061)
Nhấn phím tắt mô tả bên dưới
Windows: Ctrl + Shift + S
Máy Mac: Cmd + Shift + S
Bạn có thể tìm thấy ảnh chụp màn hình của mình trên máy tính để bàn
Tôi nghĩ bạn cũng có thể quay video miễn phí. Genymotion sử dụng VirtualBox để thực hiện hầu hết mọi công việc nặng nhọc, vì vậy bạn nên mở VirtualBox và xem bạn có thể làm gì trong đó.
Bạn sẽ tìm thấy các tùy chọn trong Virtualbox để quay video!
Oracle VM VirtualBox Manager
trên Windows 7 và có vẻ gì như của bạn ...
Nếu máy Mac của bạn chạy chậm và bạn ghét chạy Eclipse và trình giả lập cùng nhau thì đây là cách nhanh hơn.
Đây là một lựa chọn tốt cho những người sử dụng máy tính chậm.
@Reck cho biết có một lỗi trong quá trình triển khai Genymotion nên chúng tôi không thể chụp ảnh màn hình trên 2.3.7. Điều này có nghĩa là Android Studio / DDMS không thể nhận được các pixel thích hợp. adb shell screencap
nói rằng không có screencap
lệnh.
Giả sử bạn có quyền truy cập vào mã, bạn có thể chỉ cần gọi phương thức này:
public static void screenshot(View view) {
Bitmap bitmap = Bitmap.createBitmap(view.getWidth(), view.getHeight(), Bitmap.Config.ARGB_8888);
view.draw(new Canvas(bitmap));
String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
try {
File storageDir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);
storageDir.mkdirs();
File file = File.createTempFile(timeStamp, ".png", storageDir);
bitmap.compress(Bitmap.CompressFormat.PNG, 0, new FileOutputStream(file));
Log.i("SCREENSHOT", "adb pull " + file);
} catch (IOException e) {
Log.e("SCREENSHOT", "Cannot save screenshot of " + view, e);
}
}
Đang hoạt động:
screenshot(getWindow().getDecorView());
Trong mảnh:
screenshot(getActivity().getWindow().getDecorView());
Hạn chế duy nhất mà tôi biết là nó sẽ không bao gồm thanh trạng thái.
Chụp màn hình
Trên nhiều thiết bị Android, bạn có thể chụp ảnh màn hình bằng tổ hợp phím: Nhấn và giữ đồng thời Nguồn và Giảm âm lượng. Bạn cũng có thể chụp ảnh màn hình bằng Android Studio như sau:
Chạy ứng dụng của bạn trên thiết bị được kết nối hoặc trình mô phỏng. Nếu sử dụng thiết bị được kết nối, hãy đảm bảo rằng bạn đã bật gỡ lỗi USB. Trong Android Studio, chọn View> Tool Windows> Logcat để mở Logcat. Chọn thiết bị và một quy trình từ menu thả xuống ở đầu cửa sổ. Nhấp vào Chụp màn hình ở phía bên trái của cửa sổ. Ảnh chụp màn hình xuất hiện trong cửa sổ Trình chỉnh sửa ảnh chụp màn hình
Nó hoạt động cho cả Trình giả lập Genymotion