android10の環境でテキストファイルを読み込む必要がありFileInputStreamを試したのですが、
ディレクトリ、ファイルともに存在するにも関わらずopen failed: ENOENT (No such file or directory)で落ちてしまいます。色々調べたのですがディレクトリの指定が出来なかったりで困っています。
パーミッション等何か抜けがあるのでしょうか。ご教示頂けると幸いです。
manifest
1<?xml version="1.0" encoding="utf-8"?> 2<manifest xmlns:android="http://schemas.android.com/apk/res/android" 3 xmlns:tools="http://schemas.android.com/tools" 4 package="com.fujitsu.dfxmobile"> 5 <uses-permission android:name="android.permission.VIBRATE"/> 6 <uses-permission android:name="android.permission.FOREGROUND_SERVICE" /> 7 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 8 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 9 <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 10 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> 11 <uses-permission android:name="android.permission.INTERNET"/> 12 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 13 <uses-permission android:name="android.permission.READ_CONTACTS"/> 14 <uses-permission android:name="android.permission.WRITE_CONTACTS"/>
MainActivity.java
1 protected void onCreate(Bundle savedInstanceState) { 2 super.onCreate(savedInstanceState); 3 setContentView(R.layout.alram_list); 4 firtTime = true; 5 context = getApplicationContext(); 6 7 8 if (Build.VERSION.SDK_INT >= 23) { 9 if(ActivityCompat.checkSelfPermission(this,Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED 10 || ActivityCompat.checkSelfPermission(this,Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) 11 { 12 ActivityCompat.requestPermissions(this, 13 new String[]{ 14 Manifest.permission.WRITE_EXTERNAL_STORAGE, 15 Manifest.permission.READ_EXTERNAL_STORAGE, 16 }, 17 PERMISSION_WRITE_EX_STR); 18 } 19 } 20 21中略 22 23 basepath = context.getExternalFilesDir(null).getPath() + "/" + test + "/"; 24 25 //明細用のデータを作成 26 FileInputStream fi = null; 27 InputStreamReader is = null; 28 BufferedReader br = null; 29 //読込 30 String file_name = basepath + "/text.txt"; // 入力ファイル 31 try { 32 33 FileInputStream fileInputStream = new FileInputStream(file_name); 34 } catch (Exception e) { 35 } 36 37 38```。 39環境 40Android19 41 42 43 44 45 46
回答1件
あなたの回答
tips
プレビュー