[Android] Android アプリからScreenShotを撮る

端末で「電源ボタン」+「音量下」の同時押しでスクリーンショットが撮れますがタイミングが合いにくかったり、プログラムで画面のショットを取りたいときがありますが、方法は色々可能です。
 

Android Studio 3.0.1
Android 8.1.0

 



Screen Caputre

 

 

アプリでスクリーンショット

 
これはAndroid Studioに入っているSampleを元に切り出したものです。

Android Studioから「New」「Import Sample」のサンプルの中に「Screen Capture」があります。このサンプルはFragmentになっているのでActivityに落として簡略化してImageViewで表示させるように修正しました。
 
アプリでスクリーンショットをユーザーに無断で撮るのは、ユーザーの重要な情報も取得できてしまうため許可を得る工程が入ります。
この画像をアプリの背景とし、そのスクリーンショットを取って画面上に表示させてみます。
 

 
MediaProjection を使っていますが、Andorid5.0以降の機能です。
 
MainActivity.java

 
activity_main.xml

 
strings.xml

 
スクリーンショットがとれました。
この画像を端末内に保存してギャラリーで見たり、メールで送ったり、をPCに取り込んだりすることが可能です
 

 

adb コマンドを使ってキャプチャする

 
adbコマンドからもキャプチャすることができます。
端末のディレクトリーで書き込み可能領域にtext.pngでスクリーンショット画像を撮って保存する例です。

その後で、その画像をPCのc:\tempに取り込めばいいのでこういうコマンドでいけます。

 
adbコマンドについて、書き込み可能領域の確認はadb コマンドを参照してください。

 

emulatorでのスクリーンショット

 

Android Studioでアプリを実行、カメラアイコンの「Screen Capture」をクリックします
 

screenshot
 

実行中のスクリーン表示されます
 

screenshot2
 

実行ターゲットによっては、大きすぎる場合もありますが、そんな時は虫眼鏡アイコンの「-」をクリックして画像を小さく表示します。ここで拡大・縮小はあくまで表示だけです。
 

screenshot3
 
 

だいぶ見やすくなりました。更にFrame Screenshotなどの効果も演出できます。

これで「Save」すると出来上がりです。

screenshot5

誤字脱字、意味不明で分からにゃイ、
などのご意見はこちらから mailフォーム

ブックマークしておくと便利です このエントリーをはてなブックマークに追加


 


ページのトップへ戻る




シェアする

  • このエントリーをはてなブックマークに追加

フォローする