您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“Android系統(tǒng)開發(fā)照片裁剪加載失敗的原因有哪些”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
原因一:
沒有獲取相機(jī)權(quán)限,調(diào)起相機(jī)失敗;
if (ContextCompat.checkSelfPermission(baseActivity, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED){ // 進(jìn)入這兒表示沒有權(quán)限 if (ActivityCompat.shouldShowRequestPermissionRationale(baseActivity, Manifest.permission.CAMERA)) { // 提示已經(jīng)禁止 // ToastUtil.longToast(mContext, getString(R.string.you_have_cut_down_the_permission)); } else { ActivityCompat.requestPermissions(baseActivity, new String[]{Manifest.permission.CAMERA}, 100); } }
原因二:
Android7.0版本:沒做適配
原因三:
以上都完成的情況下,拍照成功以后調(diào)起裁剪的時(shí)候 ,拿不到照片,顯示加載失敗。
這時(shí)候你可以看看自己的代碼中有沒有申請存儲權(quán)限,這權(quán)限很容易疏忽導(dǎo)致一直拿不到圖片,往往在相機(jī)回調(diào)的情況下intent返回拿到的又是空值,就容易在這糾結(jié)。其實(shí)相機(jī)回調(diào)一些手機(jī)intent值本就是返回空值null,所以我們都是通過路徑拿到之前你拍成功的圖片。
//獲取存儲權(quán)限 if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP) { if (ActivityCompat.checkSelfPermission(baseActivity, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { if (ActivityCompat.shouldShowRequestPermissionRationale(baseActivity, Manifest.permission.WRITE_EXTERNAL_STORAGE)) { // 提示已經(jīng)禁止 } else { ActivityCompat.requestPermissions(baseActivity, PERMISSIONS_STORAGE, REQUEST_PERMISSION_CODE); } } else { Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); if (takePictureIntent.resolveActivity(baseActivity.getPackageManager()) != null) { Uri fileUri = FileProvider7.getUriForFile(baseActivity, file); takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); baseActivity.startActivityForResult(takePictureIntent, TAKE_PICTURE); } } } else { Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); if (takePictureIntent.resolveActivity(baseActivity.getPackageManager()) != null) { Uri fileUri = FileProvider7.getUriForFile(baseActivity, file); takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); baseActivity.startActivityForResult(takePictureIntent, TAKE_PICTURE); } } }
“Android系統(tǒng)開發(fā)照片裁剪加載失敗的原因有哪些”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。