質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Q&A

解決済

1回答

9797閲覧

Android studioでCamera2を使ってカメラ起動~撮影を実現したいです。

退会済みユーザー

退会済みユーザー

総合スコア0

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

0グッド

1クリップ

投稿2018/01/04 14:36

#実現したいこと Android studioでCamera2を使ってカメラ起動~撮影を実現したいです。

AndroidManifest.xmlに
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />追加済みです。

javaのソースコードで処理(起動~撮影)を実現するにはどういう記述を書けばよろしいでしょうか?
ソースコードを載せていただくとうれしいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

こんにちは。アプリ内でボタンを押してカメラを起動させたいということでしょうか。
あと、Camera2というのはIDなのかよくわかりませんが、今回はCameraということで進めていきます。
AndroidManifestに書いたことはとてもグッドです!

ボタンを押してカメラを起動するコードだと思うのでそれを中心的にやっていきます。

Java

1//MainActivity 2public class MainActivity extends AppCompatActivity { 3 4 private final static int RESULT_CAMERA = 1001;//これがないと保存できないです。 5 private ImageView imageView;//イメージビューの宣言文 6 7 @Override 8 protected void onCreate(Bundle savedInstanceState) { 9 super.onCreate(savedInstanceState); 10 setContentView(R.layout.activity_main); 11 12 imageView = findViewById(R.id.image_view);//先にImageViewをレイアウトビューのIDと紐づけ 13 14 Button cameraButton = findViewById(R.id.camera_button); 15 cameraButton.setOnClickListener(new View.OnClickListener() {//普通のインナークラスを使っての実装 16 @Override 17 public void onClick(View v) { 18 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 19 startActivityForResult(intent, RESULT_CAMERA); 20 } 21 }); 22 } 23 //これからImageViewにとった写真を張り付け。 24 @Override 25 protected void onActivityResult(int requestCode, int resultCode, Intent data) { 26 if (requestCode == RESULT_CAMERA) { 27 Bitmap bitmap;//BitMapも最適。 28 // cancelしたケースも含む 29 if( data.getExtras() == null){ 30 Log.d("debug","cancel ?"); 31 return; 32 } 33 else{ 34 bitmap = (Bitmap) data.getExtras().get("data"); 35 36 // 画像サイズを計測 37 int bmpWidth = bitmap.getWidth(); 38 int bmpHeight = bitmap.getHeight(); 39 Log.d("debug",String.format("w= %d",bmpWidth)); 40 Log.d("debug",String.format("h= %d",bmpHeight)); 41 } 42 43 imageView.setImageBitmap(bitmap); 44 } 45 } 46} 47 48

撮った写真を保存する際にはRealmを使って保存することをお勧めします。

参考程度にレイアウトのXMLも貼っときます

XML

1<Button 2 android:id="@+id/camera_button" 3 android:layout_width="wrap_content" 4 android:layout_height="wrap_content" 5 android:layout_margin="20dp" 6 android:text="@string/button" /> 7 8 <ImageView 9 android:id="@+id/image_view" 10 android:scaleType="fitCenter" 11 android:layout_width="300dp" 12 android:layout_height="300dp" 13 android:contentDescription="@string/description"/>

引用先 https://akira-watson.com/android/camera-intent.html

投稿2018/01/04 23:56

編集2018/01/04 23:59
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/01/05 04:21

ありがとうございます! 一度やってみます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問