android相機圖片
⑴ android 手機照相機拍照的照片,默認的保存路徑是什麼。
裝了SD卡的:
/sdcard/DCIM/camera
未裝SD卡的:
/stystm/DCIM/camera
一般安卓手機的相機功能都會有固定的存放路徑,這個位置默認為:/sdcard/DCIM/100Andro或者/sdcard/DCIM/Camera,這里的sdcard是指手機中的SD卡,在電腦中顯示的為可移動磁碟。
根據不同品牌安卓手機的後期開發,文件夾名稱可能不太一樣,但一般是在DCIM目錄文件夾里邊,當然也會有特別,例如在酷派手機中手機拍照的圖片是存放在根目錄中的Photo中。
首先,打開手機上的相機,點擊設置按鈕,裡面會有一個選擇存儲位置,一般默認是存儲在手機內存,可以進行修改,存到SD卡中。通過數據線連接到電腦後,一般是一個叫DCIM的文件。
(1)android相機圖片擴展閱讀:
手機攝像頭的技術:
「像素」指的是相機感測器上的最小感光單位,通常所說的「XXX萬像素」實際是指相機的解析度,其數值大小主要由相機感測器中的像素點(即最小感光單位)數量決定。
相機的像素能決定的是其所拍圖片的解析度,而圖片的解析度越高,只代表了圖片的尺寸越大,並不能說明圖片越清晰。
感測器
相機感測器主要分兩種,CCD和CMOS。同時代的CMOS比CCD的開口率要低很多(也就是相同面積下,感光晶元真正接收光的面積CCD會比較大)。富士等創新型cmos的出現,CCD因為成本高,成像上越來越沒優勢就被淘汰了。
CMOS感測器又分為背照式和堆棧式兩種,二者系出同門,技術最早都由索尼研發,索尼背照式感測器品牌名為「ExmorR」,堆棧式感測器為「ExmorRS」。
相對來說,感測器尺寸越大,感光性能越好,捕捉的光子(圖形信號)越多,信噪比越高,成像效果自然也越出色,然而更大的感測器卻會導致手機的體積、重量、成本增加。
⑵ 如何讓Android手機拍出高畫質照片
手機相機使用技巧可以參考以下介紹:
1.掌握光線及模式調節,盡量避免在逆光的情況下拍攝,有的手機支持閃光燈功能可以有效補充光線,不過有效距離比較短,適合近距離拍攝時使用。
2.協調手的把持度及拍攝姿勢,在拍攝時,右手握機對准拍攝對象,然後用左手托住右手,保持平穩。
3.注意手機與景物的平行。
4.部分手機支持許多模式拍攝,可以根據具體拍攝場景進行模式選擇。
⑶ Android調用相機相冊選圖時怎麼跳過裁剪
Intent intent = new Intent(Intent.ACTION_PICK,
android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, PICK);
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
switch (requestCode) {
case PICK:
String picPath = null;
String[] pojo = { MediaStore.Images.Media.DATA };
Cursor cursor = managedQuery(data.getData(), pojo, null, null,
null);
if (cursor != null) {
int columnIndex = cursor.getColumnIndexOrThrow(pojo[0]);
cursor.moveToFirst();
picPath = cursor.getString(columnIndex);
try {
if (Integer.parseInt(Build.VERSION.SDK) < 14) {
cursor.close();
}
} catch (Exception e) {
Log.e("", "error:" + e);
}
}
Log.i("", "imagePath = " + picPath);
⑷ Android調用手機相機拍照,保存圖片會出現2張解決辦法。
最近項目中使用系統相機拍照,保存圖片,發現一些問題。
讀取圖片旋轉角度,然後再旋轉回去。
使用BitmapFactory.Options,能更准確的獲取圖片格式,
判斷地址末尾 .gif 有時候會不準確(不推薦)
上傳伺服器,一般使用地址,但是用戶手動刪除圖片後,地址是無效的。為了防止地址無效,可以對需要上傳圖片地址做保存,但又希望系統讀取不到,可以對保存地址進行修改。
讀取圖片地址api
我們可以去系統相冊查看兩張圖片,會發現兩張圖片的地址是不一樣的,而且兩張圖片的大小也不同。
出現2張的原因是:
(1)調用系統相機,拍照完成我們會生成一個保存地址,而這個地址是: /storage/android/data/包名/Picture/ ,這張是我們保存的拍照圖片。
(2)相同的一張圖片在哪?這個地址是:/storage/Pictures/ ,這張圖片是系統復制的App目錄下Pictures中的圖片。
所以就會出現在系統相冊兩張圖片,但兩張圖片大小不一致,地址不同。
調用系統api,只能讀取到一張,是系統復制的那張,也就是 /storage/Pictures/ 目錄下的這張,但是/storage/android/data/包名/Picture/ 目錄下的沒有讀取到。
知道了問題,就有解決辦法,可分為三種方法:
(1)第一種方法:
保存圖片的時候,修改下地址(可參照標題 3 ,這樣讓系統無法識別出這張圖片),結果就是,我讀取不到,系統也別想讀取不到,在系統相冊里也就看不到這張圖片。
(2)第二種方法:
因為api無法讀取到,那我們就直接再讀取/storage/android/data/包名/Picture/ 下的文件,把圖片一塊加入到同一個集合中用於展示,這樣所有的圖片都有了,但是系統相冊中還是有兩張圖片,為解決這個問題。
(3)第三種方法:( )
在我們保存圖片的時候,直接保存到 /storage/Pictures/ 這個目錄下,也不用系統幫我們復制了,這樣就只會出現一張,而且我們也能調用api直接讀取到,兩個問題全都解決了,完美!
(如果以上有錯誤或者有更優美的方式,感謝指出並改之,與君共勉)
這是我項目中出現的問題,希望能夠幫助到你,Thanks,Bye!