Я использую Genymotion для запуска приложения для Android. Может ли кто-нибудь сказать мне, как снимать снимок экрана в Genymotion?Захват скриншота в GenyMotion
ответ
Отказ: Я часть той же компании, что и команда Genymotion.
Эта функция включена в комплект поставки. Это одна из платных функций виджета screencast. Look at the pricing page here.
Два способа доступа к его:
- платить за профессиональный или инди лицензии
- использовать пробную версию, он предлагает вам инди-функции. Будьте осторожны, есть только один пробный день слева: -/
После запуска виртуальной машины, откройте скринкасты виджет
Затем сделайте снимок с выделенной кнопкой
UPDATE: У вас есть еще один способ сделать снимок экрана, используя Android Device Monitor или command line
Большое вам спасибо за ур комментарий – kavie
Thanks dya. Обычно, в StackOverflow, если ответ решает вашу проблему, вы должны пометить его как разрешенную, а не как upvote, как вы. –
больше не является – panchicore
Я думаю, вы также можете снимать видео бесплатно. Genymotion использует VirtualBox для выполнения почти всех тяжелых операций, поэтому вы должны открыть VirtualBox и посмотреть, что вы можете сделать в нем.
Вы найдете варианты в Virtualbox для захвата видео!
Я открыл 'Oracle VM VirtualBox Manager' в Windows 7, и он не похож на ваш ... – TWiStErRob
Я только что установил VirtualBox на Win7, и это выглядит для меня. http://i.imgur.com/XKqlFW2.jpg – TrophyGeek
Это «linux», у вас есть те же варианты для андроидов Genymotion? (Может быть, он работает только над Android 4, я пробовал 2.3.7) – TWiStErRob
Если вы используете Android Studio или Eclipse, вы можете просто нажать на кнопку "Screen Capture" в Android DDMS:
Это также работает в Eclipse, а не только в Android Studio. Просто переключитесь на DDMS и щелкните по символу камеры с помощью выбранного устройства. –
Это не будет работать для 2.3.7 устройств в Genymotion, так как в настоящее время существует ошибка в их реализации framebufer. Просто FYI. – Reck
Есть ли ярлык для этого? – Jacky
Вы можете использовать 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
в терминале и получить скриншот запущенного эмулятора в моей директории загрузки.
На Mac я получал 'adb server устаревший. убивая ... 'при попытке этого. Я исправил его с помощью 'adb', включенного в Genymotion:' /Applications/Genymotion.app/Contents/MacOS/tools/adb shell screencap -p | perl -pe 's/\ x0D \ x0A/\ x0A/g'> ~/Downloads/android_screenshot.png' – cgenco
Удивительное решение! работает как шарм. –
Ницца! Прекрасно работает! –
Если ваш Mac работает медленно, и вы ненавидите запуск Eclipse и эмулятор вместе, это более быстрый способ.
- Экспортируйте свой apk.
- Начало Genymotion.
- Перетащите apk в эмулятор, чтобы установить его.
- Перейдите к 'android-sdk-macosx> tools> ddms'.
- Запустите этот файл.
- Будет запущен новый экземпляр ddms. В отличие от Eclipse, это не замедляет работу вашей системы.
- Используйте параметр «Меню> Устройство> Снимок экрана», чтобы сделать снимок экрана.
Это хороший вариант для тех, кто использует медленные компьютеры.
@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());
В Fragment:
screenshot(getActivity().getWindow().getDecorView());
Единственное ограничение, я знаю, что он не будет включать строку состояния.
Для Linux и Windows, (я использовал gitbash на окнах) adb shell screencap -p | sed 's/\r$//' > screen.png
Для Mac adb shell screencap -p | perl -pe 's/\x0D\x0A/\x0A/g' > screen.png
adb shell screencap -p /sdcard/screen.png
Если вы используете Eclipse, то выполните следующие действия для любого типа эмулятора: 1. Выберите DDMS 2. В окне «Устройства» DDMS выберите «Устройство Genymotion» 3. Нажмите значок «Камера», затем сохраните его в определенном месте.
Используйте эту команду:
Windows:
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
Спасибо, это работает. –
Спасибо большое !!! – GalloPinto
С небольшими изменениями он работает для меня: 'adb shell screencap -p" /mnt/sdcard/output.png "&& adb pull" /mnt/sdcard/output.png ". && adb shell rm "/ mnt/sdcard/output.png "' – manikanta
, если вы используете Mac, иногда CMD + Shift + 4 (скриншот выбранной части в OSX), а затем выбрать область тренажере достаточно :)
- Выберите genymotion тренажер
Хит клавиша быстрого описания ниже
для Windows: Ctrl + Shift + S
Mac: Cmd + Shift + S
Вы можете найти свои скриншоты на рабочий стол
Он работает, но скриншот не сохраняется на рабочем столе. Он сохраняется в C:/Users/~ LoginName ~/~ AVD Name ~/Screenshot-datetimestamp.png –
- 1. Захват скриншота без рамки
- 2. Захват скриншота iframe
- 3. Захват скриншота активного окна?
- 4. Захват скриншота скрытого рабочего стола
- 5. Захват скриншота на нескольких дисплеях
- 6. PhantomJS захват скриншота мобильного браузера
- 7. Захват скриншота с помощью htmlunitdriver?
- 8. Java - Захват скриншота с координатами экрана
- 9. Захват скриншота с использованием двух точек
- 10. Захват скриншота на тестах Specs2 (Scala)
- 11. Захват видео скриншота с использованием холста
- 12. Захват скриншота из выбранного свернутого окна
- 13. Захват скриншота с фоном с помощью webdriver
- 14. Захват скриншота страницы Steam с Ruby
- 15. Захват скриншота В том числе полупрозрачные окна в .NET
- 16. Выполнение скриншота в perl
- 17. Захват скриншота при сбое теста в сложном тестовом комплекте
- 18. Захват скриншота только в виде одной части формы?
- 19. Захват скриншота программы с использованием индексированной таблицы цветов
- 20. Захват скриншота сайта на клиенте (Javascript или flash)
- 21. Захват и сохранение скриншота при нажатии - Windows C#
- 22. Захват скриншота веб-страницы с использованием html2canvas с расширением png
- 23. Захват скриншота полноэкранного DX11-программы с использованием SharpDX и EasyHook
- 24. Захват скриншота с phantomjs на странице с наложением
- 25. Захват скриншота из Blackberry 10 Simulator на ПК
- 26. Захват скриншота определенного элемента с помощью NodeJS и Browserstack
- 27. рассылка скриншота
- 28. Размер скриншота в iPhone6
- 29. Как захватить субтитры со скриншота с PHP?
- 30. Genymotion: segmentation fault (core dumped) genymotion
Пожалуйста, дон Не забудьте выбрать ответ! ;) –