GenyMotionでスクリーンショットをキャプチャする


80

私はAndroidアプリケーションを実行するためにGenymotionを使用しています。Genymotionでスクリーンショットをキャプチャする方法を教えてもらえますかますか?


答えを選択することを忘れないでください!;)
electronicix384128

回答:


40

免責事項:私はGenymotionチームと同じ会社の一員です。

この機能は製品に含まれています。これは、スクリーンキャストウィジェットの有料機能の1つです。こちらの価格ページをご覧ください

アクセスする2つの方法:

  • プロまたはインディーライセンスの支払い
  • 試用版を使用すると、インディー機能が提供されます。注意してください、残りの試用日は1日だけです:-/

VMが起動したら、スクリーンキャストウィジェットを開きます

ここに画像の説明を入力してください

次に、専用ボタンで写真を撮ります

ここに画像の説明を入力してください

更新:Androidデバイスモニターまたはコマンドラインを使用してスクリーンショットを撮る別の方法があります


1
コメントありがとうございます
kavie 2014

2
ありがとうdya。通常、StackOverflowでは、回答で問題が解決した場合、あなたが行ったように賛成するのではなく、解決済みとしてマークする必要があります。
eyal-lezmy 2014

193

Android StudioまたはEclipseを使用している場合は、AndroidDDMSの[スクリーンキャプチャ]ボタンをクリックするだけです。

ここに画像の説明を入力してください


2
これは、Android Studioだけでなく、Eclipseでも機能します。DDMSに切り替えて、適切なデバイスを選択した状態でカメラの記号をクリックするだけです。
X.X_Mass_Developer 2014年

4
現在、フレームバッファの実装にバグがあるため、これはGenymotionの2.3.7デバイスでは機能しません。参考までに。
Reck 2014

これに対するショートカットはありますか?
LiangWang 2014年

デバイスに接続できないエラーが表示された場合は、Android Studioを再起動してください:)
Choletski 2016年

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
Macで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 2014

いいね!よく働く!
sdfsdf 2016

かっこいいので、genymotionライセンスをアップグレードする必要はありません:cry:!
冥王星2016年

これはPROレベルの回答です、ありがとう!ただ、アップデートとして、マックOSX上で、現在のコマンドで動作します:別名スクリーンショット=「adbのシェルSCREENCAP -p>〜/ダウンロード/ android_screenshot.png」
Juangui JORDAN

1
タイムスタンプを追加して名前を一意にすることを好みます。aliasscreenshot= '/ Applications / Genymotion.app / Contents / MacOS / tools / adb shell screencap -p | perlの-peさん/ \ x0D \ X0A / \ X0A / G '>〜/デスクトップ/ Android_Screenshot _ $(日付"+%Y-%M-%D-%H-%M" - %S).PNG」
Musa almatri 2017

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 2017

Windowsの通常のユーザーには、「C:\」に直接書き込む権限がないと思います。そのため、これが機能するように、のターゲットの場所adb pullを実際に書き込み権限があるディレクトリに変更することをお勧めします。そうでなければ、かなりシンプルでエレガントなソリューション、ありがとう!
SaAtomic 2017年

1
ありがとう、@ SaAtomic、私はメモで私の答えを編集しました。
gabrielmaldi 2017年

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

13
  1. genymotionシミュレーターを選択します
  2. 以下に説明するショートカットキーを押します

    • Windows:Ctrl + Shift + S

    • Mac:Cmd + Shift + S

  3. あなたはデスクトップであなたのスクリーンショットを見つけることができます


1
動作しますが、スクリーンショットをデスクトップに保存できません。C:/ Users /〜LoginName〜/〜AVD Name〜 / Screenshot-datetimestamp.pngに
保存

1
Macの場合、スクリーンショットのフォルダパスによって異なります。デフォルトはデスクトップです
Iliyass Hamza 2018

ヒントをありがとう!Genymotion 2.8.0(Windows)の無料バージョンでも動作します:)
AntonK

11

無料で動画も撮れると思います。GenymotionはVirtualBoxを使用してほとんどすべての面倒な作業を行うため、VirtualBoxを開いて、そこで何ができるかを確認する必要があります。

Virtualboxには、ビデオをキャプチャするためのオプションがあります。 ここに画像の説明を入力してください


Oracle VM VirtualBox ManagerはWindows7で開きましたが、あなたのようには見えません...
TWiStErRob 2014

Win7にVirtualBoxをインストールしたところ、このように見えます。i.imgur.com/XKqlFW2.jpg
TrophyGeek

これは「Linux」ですが、Genymotion Androidにも同じオプションがありますか?(Android 4以上でのみ動作する可能性があります
。2.3.7

1
これを試しましたか?Debian上のVirtualBoxの場合、Androidデバイスのカーネルメッセージのみを記録します。
dols 2015年

genymotionデバイスをvirtualBoxから直接起動することはできません。このソリューションは機能しません。
ダニエレ2015


5

Macが遅く、Eclipseとエミュレーターを一緒に実行するのが嫌いな場合は、ここがより速い方法です。

  1. APKをエクスポートします。
  2. Genymotionを開始します。
  3. それをインストールするために、apkをエミュレーターにドラッグします。
  4. 'android-sdk-macosx> tools> ddms'に移動します。
  5. そのファイルを実行します。
  6. ddmsの新しいインスタンスが開始されます。Eclipseとは異なり、システムの速度が低下することはありません。
  7. 'メニュー>デバイス>スクリーンショット'オプションを使用してスクリーンショットを撮ります。

これは、低速のコンピューターを使用している場合に適したオプションです。


3

Eclipseを使用している場合は、任意のタイプのエミュレーターの手順に従います。1。DDMSを選択します。2。DDMSの[デバイス]ウィンドウで、Genymotionデバイスを選択します。3。カメラアイコンをクリックして、特定の場所に保存します。 デバイスウィンドウで、カメラアイコンをクリックするだけです。 ここですでに円でマークしています


2

LinuxおよびWindowsの場合(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


0

@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());

私が知っている唯一の制限は、ステータスバーが含まれないことです。


0

Macを使用している場合は、CMD + Shift + 4(OSXで選択した部分のスクリーンショット)を使用してから、シミュレーター領域を選択するだけで十分な場合があります:)


0

スクリーンショットを撮る

多くのAndroidデバイスでは、キーの組み合わせを使用してスクリーンショットをキャプチャできます。電源と音量を同時に押し続けます。次のように、AndroidStudioでスクリーンショットをキャプチャすることもできます。

接続されたデバイスまたはエミュレーターでアプリを実行します。接続されたデバイスを使用している場合は、USBデバッグが有効になっていることを確認してください。Android Studioで、[表示]> [ツールウィンドウ]> [Logcat]を選択して、Logcatを開きます。ウィンドウ上部のドロップダウンからデバイスとプロセスを選択します。ウィンドウの左側にある[スクリーンキャプチャ]をクリックします。スクリーンショットがスクリーンショットエディタウィンドウに表示されます

Genymotionエミュレーターでも機能します

詳細については、こちらを確認してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.