0

私は Android エミュレーターと開発プラットフォームを使用しています。

新しいアプリケーションを作成しましたが、どうすれば Android 携帯電話のカメラを閉じたり開いたりできますか?

4

3 に答える 3

2

アプリから開くことについて話している場合は、カメラのインテントを使用する必要があります。

Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
intent.putExtra("android.intent.extras.CAMERA_FACING", 1);
startActivityForResult(intent, 1);

編集:

1 - 前面カメラ用

于 2013-01-14T14:40:51.867 に答える
1

エミュレーターの AVD を作成するときに、前面カメラと背面カメラを有効にするオプションがあります。エミュレーターでこのオプションを有効にすると、通常の電話と同じように (カメラ アプリまたはシステム経由で) カメラにアクセスできます。

エミュレーター イメージが表示されない場合は、おそらくエミュレーター イメージでカメラ オプションを有効にしていない可能性があります。

于 2013-01-14T14:37:00.157 に答える
1

エミュレータでカメラを有効にしており、既存のカメラ アプリケーションを開く代わりに、その機能に自分でアクセスしたいと仮定します。このハードウェアに実際にアクセスするには、Android の関数を使用する必要があります。また、アプリに使用許可を与える必要があります。

    プライベート ボイド startCamera(){
        //最初にカメラが使用可能かどうかを確認します
            if(getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA)){
                Log.d("CameraApp", "カメラがあります");
                カメラ カム = Camera.open(); // カメラの使用を開始します。ここから先は、その機能にアクセスできるはずです。     
                cam.unlock();
                cam.startPreview();
            } そうしないと {
                Log.d("CameraApp", "カメラはありません");
                Toast.makeText(this, "カメラが利用できません",
                        Toast.LENGTH_SHORT).show();
            }
        }

完了したら必ず閉じてください。

    プライベートボイドstopCamera(){
        cam.stopPreview();
        cam.release();
    }

これを AndroidManifest.xml に追加して、アプリにアクセス許可を付与します。

<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />

各機能 (ズーム、オートフォーカスなど) を追加するには、独自の権限が必要です。

詳細については、http: //developer.android.com/reference/android/hardware/Camera.htmlも参照してください。

于 2013-01-14T14:52:00.440 に答える