teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

解決方法を追記。

2018/10/23 13:45

投稿

Daichi
Daichi

スコア47

title CHANGED
File without changes
body CHANGED
@@ -30,4 +30,28 @@
30
30
  /storage/emulated/0/Download このようになっておりました。
31
31
  また、adbで取得したpathにアクセスしたところディレクトリがある事は確認しております。
32
32
 
33
- ### 補足情報(FW/ツールのバージョンなど)
33
+ ### 補足情報(FW/ツールのバージョンなど)
34
+
35
+ 最終的に解決した方法は以下のようにパーミッションを要求するように実装したところ解決しました。
36
+ 他の方の参考になればと思い、以下に書き残しときます。
37
+ ①に実装するにあたって以下のAndroid Developerのサイトを参考にしました。
38
+ ②に欲しいPermissionの種類がいろいろ書いてあります。
39
+ ①https://developer.android.com/training/permissions/requesting?hl=ja
40
+ ②https://developer.android.com/reference/android/Manifest.permission?hl=ja#READ_CONTACTS
41
+ ```java
42
+ public void CheckPermission() {
43
+ if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE)
44
+ != PackageManager.PERMISSION_GRANTED) {
45
+        //ここでパーミッションがあるかチェックしてる?
46
+ if (ActivityCompat.shouldShowRequestPermissionRationale(this, permission.READ_EXTERNAL_STORAGE)) {
47
+ //ここはよくわからないけど、必要っぽい?
48
+ }else{
49
+ ActivityCompat.requestPermissions(this,newString[]{permission.READ_EXTERNAL_STORAGE},GetResultPermission);
50
+ //このelse文でユーザ側にアクセス可能かどうかをポップアップで聞いてくる
51
+ }
52
+ }
53
+ }
54
+ ```
55
+ manifestファイルにも必要なpermissionを追記しないといけないと思います。
56
+ 自分の場合は、外部ストレージ(ExternalStorage)へのREADのアクセスが必要でしたので、以下を追記しました。
57
+ <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

1

pathにアクセスした際の出力について追記しました

2018/10/23 13:45

投稿

Daichi
Daichi

スコア47

title CHANGED
File without changes
body CHANGED
@@ -26,5 +26,8 @@
26
26
  FileList = new File(Downloads_path).listFiles();
27
27
  にて、Downloadフォルダ以下のディレクトリを取得しようとしたが、できなかった。
28
28
 
29
+ Logにて、取得したpathを表示したところ
30
+ /storage/emulated/0/Download このようになっておりました。
31
+ また、adbで取得したpathにアクセスしたところディレクトリがある事は確認しております。
32
+
29
- ### 補足情報(FW/ツールのバージョンなど)
33
+ ### 補足情報(FW/ツールのバージョンなど)
30
- 使用しているAndroid端末はQuaphoneを使用しています。