2011-07-28 16 views
1

私はこれで初めてです。簡単に行く。シンプルなアプリを実行する際に問題が発生しました。

これまでのところ、私のコードはこれに似ています。

package com.example.helloandroid; 

import android.app.Activity; 
import android.os.Bundle; 
import android.widget.TextView; 
import android.hardware.Camera; 

public class HelloAndroid extends Activity { 
/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    String fmode = "Not Supported"; 
    Camera cam = Camera.open(); 
    Camera.Parameters p = cam.getParameters(); 
    if (p.getFlashMode() != null) 
     {fmode = p.getFlashMode();} 
    TextView tv = new TextView(this); 
    tv.setText(fmode); 
    setContentView(tv); 
} 
} 

私がプログラムを実行すると、アプリケーションが突然停止したというメッセージが表示されます。もう一度お試しください。私はこれらの4行をコメントアウトした場合...

//Camera cam = Camera.open(); 
//Camera.Parameters p = cam.getParameters(); 
//if (p.getFlashMode() != null) 
    //{fmode = p.getFlashMode();} 

は、コードは正常に動作し、私は、「サポートされていません」というメッセージが表示されます。次に、Cameraオブジェクトを宣言する最初の行のコメントを外すと、再びクラッシュします。

私は学習モードで、私が得ることができるすべての情報が欲しいと思います。前もって感謝します。

+0

例外が表示されるようにDDMSログを貼り付けることはできますか? – pandre

+0

新しいユーザーについては、[this](http://developer.android.com/guide/developing/tools/logcat.html)をご覧ください。 Logcatはログと例外文字列を含むすべてのアンドロイドシステムログを出力する場所です。それはページに記述されているか、またはDDMSを開いてログを表示します。ほとんどの場合、カメラにアクセスするための明示的な許可がありません。 –

+0

私はDDMSが何であるのか分かりませんし、エミュレータのコマンドラインを開く方法もわかりません。私が言ったように、これで新しい。どういうわけか私はマニフェストファイルを疑った。 – yawningdog

答えて

0

私はアプリでカメラを使用するのはあまりよく知られていませんが、私はあなたのソリューションに向かってあなたを助ける素晴らしいチュートリアルを見つけました。私はこれがあなたのために有用であり、あなたはあなたがいない場合、私はテストは自分自身をアプリ作り、さらに

そして、前述した他の誰かのようにあなたを助けます:)必要なものを見つけることを願ってい

http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/CameraPreview.html

カメラを使用するにはいくつかのアクセス許可を追加する必要があります。 http://developer.android.com/reference/android/hardware/Camera.html

1

あなたのAndroidManifestでカメラ権限を追加しなかった可能性はありますか?

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
     package="com.example" 
     android:versionCode="1" 
     android:versionName="1.0"> 

     <uses-permission android:name="android.permission.CAMERA"></uses-permission> 
     <application ...> 
     . 
     . 
     . 
     </application> 
</manifest> 

そうではない場合:

Why does the android emulator camera stop unexpectedly?

+0

マニフェストのカメラ権限が問題でした。あなたの助けに感謝します。 – yawningdog

0

権限はアンドロイドで特定の機能へのアクセスを許可するために必要とされます。あなたのアンドロイドマニフェストに<uses-permission android:name="android.permission.CAMERA" />を入れて、カメラにアクセスできましたか?

関連する問題