2013-04-07 54 views
0

的點擊我已經從我的應用程序使用意圖調用原生相機如下:Android攝像頭不打烊的後退按鈕

Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
    intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(newFile)); 
     startActivityForResult(intent, 0); 

當我運行應用程序,如預期本機攝像頭被調用。但是,當我點擊硬件後退按鈕關閉相機,然後沒有反應!

相機拒絕關閉,無論我點擊後退按鈕多少次。有時我必須重新啓動設備。

我嘗試以下選項:

@Override  
protected void onPause() 
{   
    super.onPause(); 
       stopService(intent); 
} 

但仍然沒有成功...

但是,我也注意到我的索尼這種奇怪的行爲device..the代碼工作正常,在samsing平板電腦..

任何建議是最受歡迎的。

謝謝!

+0

可能是因爲您的申請被恢復後意圖被解僱?你能爲我們提供更多的代碼嗎? – 2013-04-07 15:41:36

回答

0

我修改您的代碼以

Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
File photo = new File(Environment.getExternalStorageDirectory(), "Pic.jpg"); 
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photo)); 
startActivityForResult(intent, 0); 

我測試了我的設備,Sony Ericsson arc s上。它的工作原理和後退按鈕正在工作。

+0

您分享的代碼與我的代碼類似。你能解釋你修改過哪一部分嗎? – user1122549 2013-04-11 08:33:49

+0

你只需要通過'getExternalStorageDirectory()'用'jpg'類型來識別從外部存儲器獲取照片的文件的照片。 – 2013-04-11 10:37:14

+0

@ user1122549我的回答對你有幫助嗎? – 2013-05-14 15:48:13