Я использую Genymotion для запуска приложения для Android. Может ли кто-нибудь сказать мне, как сделать снимок экрана в Genymotion?
Захват снимка экрана в GenyMotion
Ответ 1
Отказ от ответственности: я являюсь частью той же компании, что и команда Genymotion.
Эта функция включена в продукт. Это одна из платных функций виджета screencast. Посмотрите на страницу цены здесь.
Два способа доступа к нему:
- платить за лицензию pro или indie
- используйте пробную версию, она предлагает вам инди-функции. Будьте осторожны, осталось только один пробный день: -/
Как только ваша виртуальная машина запущена, откройте виджет screencast
Затем сделайте снимок с помощью выделенной кнопки
ОБНОВЛЕНИЕ: Ниже вы можете сделать скриншот с помощью Android Device Monitor или командной строки
Ответ 2
Если вы используете Android Studio или Eclipse, вы можете просто нажать кнопку "Screen Capture" в Android DDMS:
Ответ 3
Вы можете использовать adb, чтобы получить скриншот из командной строки:
adb shell screencap -p | perl -pe 's/\x0D\x0A/\x0A/g' > screen.png
В этой статье есть следующие сведения: http://blog.shvetsov.com/2013/02/grab-android-screenshot-to-computer-via.html
Чтобы облегчить мою жизнь, я сделал псевдоним в .bash_profile:
alias screenshot="adb shell screencap -p | perl -pe 's/\x0D\x0A/\x0A/g' > ~/Downloads/android_screenshot.png"
Теперь я могу набрать screenshot
в Terminal и получить скриншот текущего запущенного эмулятора в каталоге загрузки.
Ответ 4
Используйте следующие команды:
-
Окна:
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
; в противном случае измените его на любой желаемый путь.
- Примечание. Убедитесь, что у вас есть разрешение на запись в
-
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
Ответ 5
Я думаю, вы также можете снимать видео бесплатно. Genymotion использует VirtualBox для выполнения почти всех тяжелых операций, поэтому вы должны открыть VirtualBox и посмотреть, что вы можете с ним сделать.
В Virtualbox вы найдете опции для захвата видео!
Ответ 6
adb shell screencap -p/sdcard/screen.png
Ответ 7
Если ваш Mac работает медленно, и вы ненавидите запуск Eclipse, а эмулятор вместе - это более быстрый способ.
- Экспорт вашего apk.
- Запустите Genymotion.
- Перетащите apk в эмулятор, чтобы установить его.
- Перейдите к 'android-sdk-macosx > tools > ddms'.
- Запустите этот файл.
- Будет запущен новый экземпляр ddms. В отличие от Eclipse, это не замедляет работу вашей системы.
- Используйте параметр "Меню > Устройство > Снимок экрана", чтобы сделать снимок экрана.
Это хороший вариант для тех, кто использует медленные компьютеры.
Ответ 8
Если вы используете Eclipse, следуйте инструкциям для эмулятора любого типа: 1. Выберите DDMS 2. В окне "Устройства" DDMS выберите "Устройство Genymotion" 3. Нажмите значок камеры и сохраните его в определенном месте.
Ответ 9
Для Linux и Windows (я использовал gitbash на windows)
adb shell screencap -p | sed 's/\r$//' > screen.png
Для Mac
adb shell screencap -p | perl -pe 's/\x0D\x0A/\x0A/g' > screen.png
Ответ 10
- Выберите симулятор genymotion
-
Нажмите клавишу быстрого доступа ниже
-
Windows: Ctrl + Shift + S
-
Mac: Cmd + Shift + S
-
-
Вы можете найти скриншоты на рабочем столе
Ответ 11
@Reck говорит, что в реализации Genymotion есть ошибка, поэтому мы не можем делать скриншоты на 2.3.7. Это означает, что Android Studio/DDMS не может получить правильные пиксели. adb shell screencap
говорит, что нет команды screencap
.
Предполагая, что у вас есть доступ к коду, вы можете просто вызвать этот метод:
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);
}
}
В действии:
screenshot(getWindow().getDecorView());
В фрагменте:
screenshot(getActivity().getWindow().getDecorView());
Единственное ограничение, которое я знаю, это то, что он не будет включать строку состояния.
Ответ 12
если вы используете Mac, иногда CMD + Shift + 4 (снимок экрана выбранной части в OSX), а затем выбор области симулятора достаточно:)