[ai]ASD(=app-specific directory)のファイル、どこに保存されるの?

販売用に作ったハンディターミナルアプリ。

完成まであと一歩まできたのに・・・

Android 10で導入されたASD(=app-specific directory)が出すエラーが解決できない!

ASD(=app-specific directory)
Androidアプリがアクセスできる保存領域は、アプリ実行に作られる一時保存場所のみ。
他のアプリからアクセスさせないセキュリティ強化策(らしい)

MIT App Inventorで作り直した汎用ハンディターミナルアプリ

受注ファイル書出時に出るPermissionエラー
csvファイルをExternal Storegeへ保存しようとすると権限がないと怒られる!

エラーメッセージ:ASDでエラー。汎用ハンディターミナルが完成できないよ(泣)

解決策を探しApp Inventorフォーラムをウロウロ

[AppInventorフォーラム]

フォーラムの中は、同じasd(=app-specific directory)エラーで困ってる人、大勢います。

解決策が見つからないので作戦変更。

こんなものを作りました。
元は、App Inventorフォーラムで共有されていた「Storageアクセス権限チェック」アプリの改造版。

[AnkeExt—–App Inventorフォーラム]

ASDが、よくわからないので

とりあえず思いつくとこ全部へ
アクセスチェックするぞ!
的なアプリ

[save(保存) file]ボタンで、abc.txtを保存
[save /]ボタンで、/abc.txtを保存
[save File:/]で、File:/abc.txtを保存
[save File:///]で、File:///abc.txtを保存

保存後
[Read(読込) file]ボタンで、abc.txtを読む
[Read /]ボタンで、/abc.txtを読む
[Read File:/]で、File:/abc.txtを読む
[Read File:///]で、File:///abc.txtを読む

[Exist(存在) File]ボタンで、abc.txtの有無を調べる
[Exist /]ボタンで、/abc.txtの有無を調べる
[Exist File:/]で、File:/abc.txtの有無を調べる
[Exist File:///]で、File:///abc.txtの有無を調べる

[Delete(削除) file]ボタンで、abc.txtを削除
[Delete /]ボタンで、/abc.txtを削除
[Delete File:/]で、File:/abc.txtを削除
[Delete File:///]で、File:///abc.txtを削除

asd(=app-specific directory )ってファイルはどこにの保存されるの?

ASDtestアプリ

このアプリで分かったとこが2つ

1:ファイル名を/(スラッシュ)で始めると

ASD以前のExternal Storegeが書込先になる

例えば、/abc.txt で保存しょうとすると

「Storeageアクセス許可」設定メッセージが表示される
asd(=app-specific directory )ってファイルはどこにの保存されるの?

でも、許可してもPermissionエラーで書き込めません!
このエラーを、ASD(=app-specific directory)が出してると思います。

asd(=app-specific directory )ってファイルはどこにの保存されるの?

2:先頭が/(スラッシュ)無し、または先頭File:/なら

ASD(=app-specific directory)が保存先になるみたい

どんなフォルダー・ファイルでも作れます。

abc.txt
abc/efg/his.txt
ab/cde/fghij/klmn.txt
File:/abc.txt
File://abc/efg/his.txt
File:///ab/cde/fghij/klmn.txt

試しに、アプリを一度終了
再実行し[Exist]ボタンで存在を確認すると、

まだ、そこにある!

でも他のFilerアプリからは見えない!

これが、ASD(=app-specific directory)かな

最後にASDのFull Pathでの[Exist]検証

App InventorフォーラムによるとASDのFull Pathは

/storage/emulated/0/Android/data/アプリ名/Files/

Full Path[Exist]ボタンを押すと

File doesn’t exist

結局、ファイルはどこになるのか分からない!

追記:

2014年12月から実務投入した自作ハンディターミナルアプリ。
使い始めて8年目。

その間にGmailサービスが止まり社外から受注ファイルを送信できなかったことが3度ありました。

ファイル保存場所がわかれば、PCメール・FTP・チャットアプリで送信できると思ったのですが・・・・

このセキュリティ強化策、すごく不便に思います

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA