App 在模擬器與 Android 4.0 真機均正常,但在 Android 5.0 (API 21) 真機上啟動即閃退。
getExternalFilesDir());5.0+ 強制執行。若代碼嘗試寫入公共目錄 (如 Environment.getExternalStorageDirectory()) 且未申請權限,會拋出 SecurityException 導致閃退。
AndroidManifest.xml 是否宣告 WRITE_EXTERNAL_STORAGE。VerifyError、UnsatisfiedLinkError。adb logcat -d > crash.log 導出日誌分析。// 動態申請儲存權限 (API 23+)
if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE)
!= PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
REQUEST_CODE_STORAGE);
}