GenyMotion में स्क्रीनशॉट कैप्चर करें


80

मैं Android एप्लिकेशन चलाने के लिए Genymotion का उपयोग कर रहा हूं । कोई भी मुझे बता सकता है कि जीनोमिशन में स्क्रीन शॉट कैसे कैप्चर करें ?


कृपया, उत्तर का चयन करना न भूलें! ;)
इलेक्ट्रॉनिक्स

जवाबों:


40

डिस्क्लेमर: मैं उसी कंपनी का हिस्सा हूं, जो जीनोमिशन टीम है।

यह सुविधा उत्पाद में शामिल है। यह स्क्रीनकास्ट विजेट की सशुल्क सुविधा में से एक है। यहां मूल्य पृष्ठ देखें

इसे एक्सेस करने के दो तरीके:

  • समर्थक या इंडी लाइसेंस के लिए भुगतान करें
  • परीक्षण संस्करण का उपयोग करें, यह आपको इंडी सुविधाएँ प्रदान करता है। सावधान रहें , केवल एक परीक्षण दिवस शेष है: - /

एक बार जब आपका वीएम शुरू हो जाता है, तो स्क्रीनकास्ट विजेट खोलें

यहाँ छवि विवरण दर्ज करें

फिर समर्पित बटन के साथ एक तस्वीर लें

यहाँ छवि विवरण दर्ज करें

UPDATE: आपके पास Android डिवाइस मॉनिटर या कमांड लाइन का उपयोग करके स्क्रीनशॉट लेने के लिए एक और तरीका है


1
उर टिप्पणी के लिए बहुत बहुत धन्यवाद
kavie

2
धन्यवाद दिया आमतौर पर, StackOverflow पर, यदि कोई उत्तर आपकी समस्या को हल करता है, तो आपको इसे अपग्रेड करने के बजाय हल करना होगा जैसे आपने किया था।
पलक-लेजी

193

यदि आप Android Studio या ग्रहण का उपयोग कर रहे हैं, तो आप Android DDMS में "स्क्रीन कैप्चर" बटन पर क्लिक कर सकते हैं:

यहाँ छवि विवरण दर्ज करें


2
यह केवल एंड्रॉइड स्टूडियो में ही नहीं बल्कि ग्रहण में भी काम करता है। बस डीडीएमएस पर जाएं और चुने गए सही डिवाइस के साथ कैमरा प्रतीक पर क्लिक करें।
X.X_Mass_Developer

4
यह Genymotion पर 2.3.7 उपकरणों के लिए काम नहीं करेगा क्योंकि वर्तमान में उनके फ्रेमबुफर कार्यान्वयन में एक बग है। सिर्फ आपकी जानकारी के लिए।
जेक

क्या इसका कोई शॉर्टकट है?
लियांगवेग

अगर यह त्रुटि दिखाता है कि डिवाइस से कनेक्ट नहीं हो सकता है तो केवल एंड्रॉइड स्टूडियो को पुनरारंभ करें :)
Choletski

52

आप कमांड लाइन से स्क्रीनशॉट प्राप्त करने के लिए 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टर्मिनल में टाइप कर सकता हूं और अपनी डाउनलोड निर्देशिका में वर्तमान में चल रहे एमुलेटर का स्क्रीनशॉट प्राप्त कर सकता हूं।


3
एक मैक पर मुझे adb server is out of date. killing...यह कोशिश करते समय त्रुटियाँ हो रही थीं। मैंने इसे adbGenymotion में शामिल का उपयोग करके तय किया :/Applications/Genymotion.app/Contents/MacOS/tools/adb shell screencap -p | perl -pe 's/\x0D\x0A/\x0A/g' > ~/Downloads/android_screenshot.png
cgenco

अच्छा लगा! बहुत अच्छा काम करता है!
sdfsdf

शांत इसलिए मुझे अपने जीनोमिशन लाइसेंस को अपग्रेड करने की आवश्यकता नहीं है: रो:!
लियू प्लूटो

यह प्रो स्तर का उत्तर है, धन्यवाद! मैक ओएसएक्स पर एक अपडेट के रूप में, यह वर्तमान में कमांड के साथ काम करता है: उर्फ ​​स्क्रीनशॉट = "एडीबी शेल
स्क्रेंप-

1
मैं टाइमस्टैम्प को जोड़कर नाम को अद्वितीय बनाना पसंद करता हूं: अलियास स्क्रीनशॉट = '/ एप्लीकेशन / Genymotion.app / सामग्री / MacOS / उपकरण / adb शैल screencap -p | perl -pe 's / \ x0D \ x0A / \ x0A / g'> ~ / डेस्कटॉप / Android_Screenshot _ $ (दिनांक "+% Y-% m-% d-% H-% M" -% S) .png '
मुस अलमात्री

24

इस आदेश का उपयोग करें:

  • खिड़कियाँ:

    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
    

1
थोड़े से संशोधनों के साथ, यह मेरे लिए काम कर रहा है:adb shell screencap -p "/mnt/sdcard/output.png" && adb pull "/mnt/sdcard/output.png" . && adb shell rm "/mnt/sdcard/output.png"
manikanta

मेरा मानना ​​है कि विंडोज पर एक सामान्य उपयोगकर्ता के पास "C: \" को सीधे लिखने की अनुमति नहीं है, इसलिए आप adb pullइस कार्य को सुनिश्चित करने के लिए उस निर्देशिका के लक्ष्य स्थान को बेहतर तरीके से बदल सकते हैं जहां आपके पास वास्तव में अधिकार हैं। अन्यथा बहुत सरल और सुरुचिपूर्ण समाधान, धन्यवाद!
सैटॉमिक

1
धन्यवाद, @AAtomic, मैंने एक नोट के साथ अपना उत्तर संपादित किया है।
गाब्रिएल्लमडी

error: cannot connect to daemon: cannot connect to 127.0.0.1:5037 (10061)
JCarlosR

13
  1. जीनोमिशन सिम्युलेटर का चयन करें
  2. नीचे शॉर्टकट कुंजी मारो

    • विंडोज: Ctrl + Shift + S

    • Mac: Cmd + Shift + S

  3. आप डेस्कटॉप पर अपने स्क्रीनशॉट पा सकते हैं


1
यह काम करता है लेकिन स्क्रीनशॉट डेस्कटॉप में सहेजा नहीं जा सकता। इसने C: / Users / ~ LoginName ~ / ~ AVD नाम ~ / स्क्रीनशॉट-datetimestamp.png में
सहेजा

1
मैक के लिए यह आपके स्क्रीनशॉट फ़ोल्डर पथ पर निर्भर करता है, डिफ़ॉल्ट डेस्कटॉप है
इलियास हमजा

संकेत के लिए धन्यवाद! यह Genymotion 2.8.0 (विंडोज) के मुफ्त संस्करण के साथ भी काम करता है :)
एंटोनके

11

मुझे लगता है कि आप मुफ्त में वीडियो भी ले सकते हैं। Genymotion लगभग सभी भारी उठाने के लिए VirtualBox का उपयोग करता है, इसलिए आपको VirtualBox को खोलना चाहिए और यह देखना चाहिए कि आप इसमें क्या कर सकते हैं।

वीडियो कैप्चर करने के लिए आपको वर्चुअलबॉक्स में विकल्प मिलेंगे! यहाँ छवि विवरण दर्ज करें


मैंने Oracle VM VirtualBox Managerविंडोज 7 पर खोला और यह आपके जैसा कुछ नहीं दिखता ...
TWiStErRob

मैं सिर्फ Win7 पर VirtualBox स्थापित किया है और यह मेरे लिए इस तरह दिखता है। i.imgur.com/XKqlFW2.jpg
ट्रॉफी गीक

यह एक "linux" है, क्या आपके पास Genymotion Android के लिए समान विकल्प हैं? (शायद यह केवल एंड्रॉइड 4 से ऊपर काम करता है, मैंने 2.3.7 की कोशिश की)
TWiStErRob

1
क्या आपने यह कोशिश की है? डेबियन पर VirtualBox के लिए, यह केवल एंड्रॉइड डिवाइस कर्नेल संदेशों को रिकॉर्ड करता है।
dols

आप वर्चुअलबॉक्स से सीधे जीनोमिशन डिवाइस शुरू नहीं कर सकते। यह समाधान काम नहीं करता है।
डेनियल


5

यदि आपका मैक धीमा है और आप एक्लिप्स को चलाने से नफरत करते हैं और एमुलेटर यहां एक साथ चलना एक तेज तरीका है।

  1. अपना एपीके निर्यात करें।
  2. Genymotion शुरू करें।
  3. इसे स्थापित करने के लिए, एमुलेटर पर एपीके को खींचें।
  4. 'Android-sdk-macosx> टूल्स> ddms' पर जाएं।
  5. उस फाइल को चलाएं।
  6. Ddms का एक नया उदाहरण शुरू किया जाएगा। ग्रहण के विपरीत, यह आपके सिस्टम को धीमा नहीं करता है।
  7. स्क्रीनशॉट लेने के लिए 'मेनू> डिवाइस> स्क्रीनशॉट' विकल्प का उपयोग करें।

धीमे कंप्यूटर का उपयोग करने वालों के लिए यह एक अच्छा विकल्प है।


3

यदि आप ग्रहण का उपयोग कर रहे हैं, तो किसी भी प्रकार के एमुलेटर के लिए चरणों का पालन करें: 1. डीडीएमएस का चयन करें। डीडीएमएस के उपकरण विंडो में Genymotion डिवाइस का चयन करें 3. कैमरा आइकन पर क्लिक करें और फिर इसे विशिष्ट स्थान पर सहेजें। डिवाइसेस विंडो में बस कैमरा आइकन पर क्लिक करें।  मैं पहले से ही इसे यहाँ मंडली द्वारा चिह्नित करता हूँ


2

लिनक्स और विंडोज के लिए (मैंने विंडोज़ पर gitbash का उपयोग किया) adb shell screencap -p | sed 's/\r$//' > screen.png मैक के लिए adb shell screencap -p | perl -pe 's/\x0D\x0A/\x0A/g' > screen.png


0

@ रेक का कहना है कि जीनोमिशन कार्यान्वयन में एक बग है, इसलिए हम 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());

मुझे पता है कि केवल सीमा यह है कि इसमें स्टेटस बार शामिल नहीं होगा।


0

यदि आप मैक का उपयोग करते हैं, तो कभी-कभी CMD + Shift + 4 (OSX में चयनित भाग का स्क्रीनशॉट) और फिर सिम्युलेटर क्षेत्र का चयन करना पर्याप्त है :)


0

कोई स्क्रीनशॉट लें

कई Android उपकरणों पर, आप एक कुंजी-संयोजन के साथ स्क्रीनशॉट कैप्चर कर सकते हैं: इसके साथ ही पावर और वॉल्यूम-डाउन दबाएं। आप निम्नानुसार एंड्रॉइड स्टूडियो के साथ स्क्रीनशॉट भी कैप्चर कर सकते हैं:

किसी कनेक्टेड डिवाइस या एमुलेटर पर अपना ऐप चलाएं। यदि कनेक्टेड डिवाइस का उपयोग कर रहे हैं, तो सुनिश्चित करें कि आपने USB डीबगिंग को सक्षम किया है। Android Studio में, Logcat खोलने के लिए View> Tool Windows> Logcat चुनें। खिड़की के शीर्ष पर ड्रॉप-डाउन से डिवाइस और एक प्रक्रिया का चयन करें। विंडो के बाईं ओर स्क्रीन कैप्चर पर क्लिक करें। स्क्रीनशॉट स्क्रीनशॉट एडिटर विंडो में दिखाई देता है

यह यहां तक ​​कि Genymotion एमुलेटर के लिए काम करता है

अधिक जानकारी के लिए यहां देखें

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.