0
外部ストレージにファイルを保存したい場合は、Oreo androidバージョンで許可されていなければコードはokです。許可を得るにはこのコードを書きましたが、アンドロイドのプライマリストレージにアクセスするためのアクセス権を取得中にエラーが発生しました
int permission = ContextCompat.checkSelfPermission((Activity) ctx,
Manifest.permission.WRITE_EXTERNAL_STORAGE);
if (permission != PackageManager.PERMISSION_GRANTED) {
Log.i("per", "Permission to record denied");
if (ActivityCompat.shouldShowRequestPermissionRationale((Activity) ctx,
Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
AlertDialog.Builder builder = new AlertDialog.Builder((Activity) ctx);
builder.setMessage("Permission to access the SD-CARD is required for this app to Download PDF.")
.setTitle("Permission required");
builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
Log.i("click", "Clicked");
makeRequest();
}
});
AlertDialog dialog = builder.create();
dialog.show();
} else {
makeRequest();
}
}
protected void makeRequest() {
ActivityCompat.requestPermissions((Activity) ctx,
new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
REQUEST_WRITE_STORAGE);
file= new File(Environment.getExternalStorageDirectory(),
downloadFilePathHash);
}
に応答した後でしたあなたはあなたのスタックトレースを共有しますか? – slesh