安卓调用系统相机三步走
第一步:
?<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
第二步:
?Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); ?
?
? ? ? ? ? ? ? ? startActivityForResult(intent, 1); ?
第三步:
protected void onActivityResult(int requestCode, int resultCode, Intent data) { ?
? ? ? ? // TODO Auto-generated method stub ?
? ? ? ? super.onActivityResult(requestCode, resultCode, data); ?
? ? ? ? if (resultCode == NewsActivity.RESULT_OK) { ?
? ? ? ? ? ? String sdStatus = Environment.getExternalStorageState(); ?
? ? ? ? ? ? if (!sdStatus.equals(Environment.MEDIA_MOUNTED)) { // 檢測sd是否可用 ?
? ? ? ? ? ? ? ? Log.i("TestFile", ?
? ? ? ? ? ? ? ? ? ? ? ? "SD card is not avaiable/writeable right now."); ?
? ? ? ? ? ? ? ? return; ?
? ? ? ? ? ? } ?
? ? ? ? ? ? String name = new DateFormat().format("yyyyMMdd_hhmmss",Calendar.getInstance(Locale.CHINA)) + ".jpg"; ? ??
? ? ? ? ? ? Toast.makeText(this, name, Toast.LENGTH_LONG).show(); ?
? ? ? ? ? ? Bundle bundle = data.getExtras(); ?
? ? ? ? ? ? Bitmap bitmap = (Bitmap) bundle.get("data");// 獲取相機返回的數據,并轉換為Bitmap圖片格式 ?
? ? ? ? ??
? ? ? ? ? ? FileOutputStream b = null; ?
? ? ? ? ? ?//???????????????????????????????為什么不能直接保存在系統相冊位置呢???????????? ?
? ? ? ? ? ? File file = new File("/sdcard/myImage/"); ?
? ? ? ? ? ? file.mkdirs();// 創建文件夾 ?
? ? ? ? ? ? String fileName = "/sdcard/myImage/"+name; ?
??
? ? ? ? ? ? try { ?
? ? ? ? ? ? ? ? b = new FileOutputStream(fileName); ?
? ? ? ? ? ? ? ? bitmap.compress(Bitmap.CompressFormat.JPEG, 100, b);// 把數據寫入文件 ?
? ? ? ? ? ? } catch (FileNotFoundException e) { ?
? ? ? ? ? ? ? ? e.printStackTrace(); ?
? ? ? ? ? ? } finally { ?
? ? ? ? ? ? ? ? try { ?
? ? ? ? ? ? ? ? ? ? b.flush(); ?
? ? ? ? ? ? ? ? ? ? b.close(); ?
? ? ? ? ? ? ? ? } catch (IOException e) { ?
? ? ? ? ? ? ? ? ? ? e.printStackTrace(); ?
? ? ? ? ? ? ? ? } ?
? ? ? ? ? ? } ?
? ? ? ? ? ? ImageView iv= ?(ImageView)findViewById(R.id.news_ImageView_image);
? ? ? ? ? ? iv.setImageBitmap(bitmap);
? ? ? ? } ?
? ? } ?
總結
以上是生活随笔為你收集整理的安卓调用系统相机三步走的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android 进阶 教你打造 Andr
- 下一篇: 中科海钠推出三款钠离子电池圆形 / 方形