回答

2

如果通過Android設備的屏幕的分辨率決定

我怎樣才能得到照片的默認大小(像素),它將通過Android相機拍攝

沒有「def一張照片的大小......「。

如果您自己使用的是android.hardware.Cameraandroid.hardware.camera2 API,則需要從可用分辨率中指定所需的分辨率。

如果您使用的是ACTION_IMAGE_CAPTURE,分辨率將部分基於您是否通過EXTRA_OUTPUT,否則取決於相機應用程序。有數以千計的Android設備型號,包含數百種不同的預裝相機應用,還有許多其他相機應用可以通過Play商店等分銷渠道獲得。他們將使用android.hardware.Cameraandroid.hardware.camera2 API,並且他們將通過他們想要的任何算法來選擇他們想要使用的分辨率。

1

你可以像這樣

String pickedImagePath = "path/of/the/selected/file"; 
BitmapFactory.Options bitMapOption=new BitmapFactory.Options(); 
bitMapOption.inJustDecodeBounds=true; 
BitmapFactory.decodeFile(pickedImagePath, bitMapOption); 
int imageWidth=bitMapOption.outWidth;    
int imageHeight=bitMapOption.outHeight; 

更新:

您可以使用顯示器的指標與

DisplayMetrics metrics = new DisplayMetrics(); 
getWindowManager().getDefaultDisplay().getMetrics(metrics); 

int width = metrics.widthPixels; 
int height = metrics.heightPixels; 

注意讓你的屏幕:屏幕和分辨率的分辨率的相機可能不一樣。請參考answer here

+0

謝謝,但我很抱歉可能是我的問題不夠清楚。我剛剛編輯了問題陳述。我的意思是要求在拍攝圖像之前我需要分辨率。事實上,我所追求的是現場攝像頭饋送的像素數量(即屏幕的寬度和高度,以像素爲單位顯示實時攝像頭的像素)? – Solace

+1

你想獲得以像素爲單位的屏幕寬度和高度,對不對? – SaravInfern

+0

是的,如果全屏實時攝像頭中的攝像機幀的寬度和高度與屏幕寬度和高度相同? – Solace

1

使用以下代碼片段獲取屏幕大小。 this表示當前的Activity上下文。

WindowManager windowManager = (WindowManager) this.getSystemService(Context.WINDOW_SERVICE); 
Display display = windowManager.getDefaultDisplay(); 
DisplayMetrics displayMetrics = new DisplayMetrics(); 
display.getMetrics(displayMetrics); 
int screenWidth = displayMetrics.widthPixels; 
int screenHeight = displayMetrics.heightPixels; 
相關問題