Closed kakurezato closed 11 months ago
報告ありがとうございます。
Pixel6を使っておりAndroidのバージョンが14なのですが、USBでのデータ転送でAndroid/dataへの書込が出来ないようでした。
手元のPixel 7a (Android 14) ではUSBで書き込みできていますので、機種依存の問題か、なにか別の原因かもしれません。もう少し詳しく状況を教えていただけますでしょうか。 (Android/data
以下のディレクトリが見れない? 書き込もうとするとエラーになる?)
ただ今度はアプリが起動時にクラッシュするようになりました。
adb logcat でクラッシュ時のログを取っていただくことは可能でしょうか?
手元のPixel 7a (Android 14) ではUSBで書き込みできていますので、機種依存の問題か、なにか別の原因かもしれません。もう少し詳しく状況を教えていただけますでしょうか。 (
Android/data
以下のディレクトリが見れない? 書き込もうとするとエラーになる?)
Android/data
以下のディレクトリを見ることはできます。
今確認したところ、io.github.kichikuou.xsystem4
のディレクトリが表示されない状態でした。
その状態でPCからio.github.kichikuou.xsystem4
のディレクトリをコピーしようとしてもできません。(エラーメッセージはなくエラー音だけ鳴る)
全く関係ないフォルダをAndroid/data
へコピーすることは出来たので、io.github.kichikuou.xsystem4
以下へのアクセス権の問題ということですかね?
adb logcat でクラッシュ時のログを取っていただくことは可能でしょうか?
取り方が正しいかわかりませんが、クラッシュログはこんな感じでした。 こちらもアクセス権の問題っぽい?
12-11 01:25:05.215 12628 12628 E AndroidRuntime: FATAL EXCEPTION: main
12-11 01:25:05.215 12628 12628 E AndroidRuntime: Process: io.github.kichikuou.xsystem4, PID: 12628
12-11 01:25:05.215 12628 12628 E AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{io.github.kichikuou.xsystem4/io.github.kichikuou.xsystem4.LauncherActivity}: java.io.FileNotFoundException: /storage/emulated/0/Android/data/io.github.kichikuou.xsystem4/files/Rance7_daisengoku/.xsystem4.ico: open failed: EACCES (Permission denied)
12-11 01:25:05.215 12628 12628 E AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3782)
12-11 01:25:05.215 12628 12628 E AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3922)
12-11 01:25:05.215 12628 12628 E AndroidRuntime: at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103)
12-11 01:25:05.215 12628 12628 E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:139)
12-11 01:25:05.215 12628 12628 E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:96)
12-11 01:25:05.215 12628 12628 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2443)
12-11 01:25:05.215 12628 12628 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:106)
12-11 01:25:05.215 12628 12628 E AndroidRuntime: at android.os.Looper.loopOnce(Looper.java:205)
12-11 01:25:05.215 12628 12628 E AndroidRuntime: at android.os.Looper.loop(Looper.java:294)
12-11 01:25:05.215 12628 12628 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:8177)
12-11 01:25:05.215 12628 12628 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
12-11 01:25:05.215 12628 12628 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552)
12-11 01:25:05.215 12628 12628 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:971)
12-11 01:25:05.215 12628 12628 E AndroidRuntime: Caused by: java.io.FileNotFoundException: /storage/emulated/0/Android/data/io.github.kichikuou.xsystem4/files/Rance7_daisengoku/.xsystem4.ico: open failed: EACCES (Permission denied)
12-11 01:25:05.215 12628 12628 E AndroidRuntime: at libcore.io.IoBridge.open(IoBridge.java:574)
12-11 01:25:05.215 12628 12628 E AndroidRuntime: at java.io.FileOutputStream.
Android/data
以下のディレクトリを見ることはできます。 今確認したところ、io.github.kichikuou.xsystem4
のディレクトリが表示されない状態でした。
io.github.kichikuou.xsystem4
以外のアプリのディレクトリで、表示されているものもあるということでしょうか。
仰るとおりアクセス権の問題のように思います。adb shell
でパーミッションを確認してみてください。
ちなみに私のPixel 7aでは以下のようになりました。u0_a297
がxsystem4-androidのユーザーID、u0_a70
がUSB経由で書き込んだものです。(u0_
のあとは環境ごとに違うと思います)
$ adb shell
lynx:/ $ cd /storage/emulated/0/Android/data/
lynx:/storage/emulated/0/Android/data $ ls -ld io.github.kichikuou.xsystem4
drwxrws--- 3 u0_a297 ext_data_rw 3452 2023-12-03 10:41 io.github.kichikuou.xsystem4
lynx:/storage/emulated/0/Android/data $ ls -l io.github.kichikuou.xsystem4/files
total 7
-rw-rw---- 1 u0_a297 ext_data_rw 47 2023-12-03 10:41 dummy.txt
drwxrws--- 5 u0_a70 ext_data_rw 3452 2023-12-11 08:53 sengoku
lynx:/storage/emulated/0/Android/data $ ls -l io.github.kichikuou.xsystem4/files/sengoku
total 1466441
-rw-rw-r-- 1 u0_a70 ext_data_rw 6849244 2003-09-01 13:46 AliceLogo2.alk
drwxrws--- 2 u0_a70 ext_data_rw 3452 2023-12-03 10:49 DLL
-rw-rw-r-- 1 u0_a70 ext_data_rw 36 2003-02-24 13:20 DrawPluginDLL.inc
-rw-rw-r-- 1 u0_a70 ext_data_rw 418 2005-05-23 16:07 SACT_DLL.inc
drwxrws--- 2 u0_a70 ext_data_rw 3452 2023-12-03 10:50 SaveData
-rw-rw-r-- 1 u0_a70 ext_data_rw 245760 2006-05-26 10:14 System40.exe
-rw-rw-r-- 1 u0_a70 ext_data_rw 757 2006-11-02 11:37 System40.ini
-rw-rw-r-- 1 u0_a70 ext_data_rw 352256 2001-05-30 00:00 ijl15.dll
drwxrws--- 2 u0_a70 ext_data_rw 3452 2023-12-03 10:50 movie
-rw-rw-r-- 1 u0_a70 ext_data_rw 8545905 2006-11-11 14:45 戦国ランス.ain
-rw-rw-r-- 1 u0_a70 ext_data_rw 3262 2006-10-30 14:41 戦国ランス.ico
-rw-rw-r-- 1 u0_a70 ext_data_rw 675711248 2006-10-23 15:43 戦国ランスBA.ald
-rw-rw-r-- 1 u0_a70 ext_data_rw 2249 2006-10-23 15:43 戦国ランスBA.bgi
-rw-rw-r-- 1 u0_a70 ext_data_rw 110 2006-10-30 10:52 戦国ランスDLL.inc
-rw-rw-r-- 1 u0_a70 ext_data_rw 753534480 2006-11-08 10:36 戦国ランスGA.ald
-rw-rw-r-- 1 u0_a70 ext_data_rw 346384 2006-11-08 10:36 戦国ランスGB.ald
-rw-rw-r-- 1 u0_a70 ext_data_rw 54495504 2006-10-25 19:23 戦国ランスWA.ald
-rw-rw-r-- 1 u0_a70 ext_data_rw 26679 2006-10-25 19:23 戦国ランスWA.wai
クラッシュログもありがとうございます。
exeファイルからアイコンを抽出して.xsystem4.ico
として書き込む処理をSnapshot-2023-08-27に入れたのですが、
/storage/emulated/0/Android/data/io.github.kichikuou.xsystem4/files/Rance7_daisengoku/
ディレクトリに対する書き込み権限がないためクラッシュしているようです。
とりあえず動けばいいという場合は、なにか適当なアイコンファイル(.ico
)をRance7_daisengoku/
にコピーしておけばそれが使われるのでクラッシュしなくなると思います。
Snapshot-2023-12-01で実装したZIP経由でのインストールを使う方法もあります。
Download
以下にコピーこの方法ではxsystem4-android自体がio.github.kichikuou.xsystem4/files/
以下にファイルを書き込むので、アクセス権の問題は起きないはずです。
io.github.kichikuou.xsystem4
以外のアプリのディレクトリで、表示されているものもあるということでしょうか。
そうです、表示されているものがあります。
仰るとおりアクセス権の問題のように思います。
adb shell
でパーミッションを確認してみてください。 ちなみに私のPixel 7aでは以下のようになりました。u0_a297
がxsystem4-androidのユーザーID、u0_a70
がUSB経由で書き込んだものです。(u0_
のあとは環境ごとに違うと思います)
確認したところ以下のような状態でした。
oriole:/storage/emulated/0/Android/data $ ls -ld io.github.kichikuou.xsystem4
drwxrws--- 3 u0_a433 ext_data_rw 3452 2023-12-02 09:37 io.github.kichikuou.xsystem4
oriole:/storage/emulated/0/Android/data $ ls -l io.github.kichikuou.xsystem4/files
total 3
drwxr-s--- 5 shell ext_data_rw 3452 2023-12-02 13:18 Rance7_daisengoku
oriole:/storage/emulated/0/Android/data $ ls -l io.github.kichikuou.xsystem4/files/Rance7_daisengoku/ <
total 1815329
-rw-r--r-- 1 shell ext_data_rw 6849244 2003-09-01 13:46 AliceLogo2.alk
drwxr-s--- 2 shell ext_data_rw 3452 2023-12-02 13:17 DLL
-rw-r--r-- 1 shell ext_data_rw 36 2003-02-24 13:20 DrawPluginDLL.inc
drwxr-s--- 2 shell ext_data_rw 3452 2023-12-02 13:17 Manual
-rw-r--r-- 1 shell ext_data_rw 1007104 2010-02-25 11:56 Rance7.exe
-rw-r--r-- 1 shell ext_data_rw 418 2005-05-23 16:07 SACT_DLL.inc
-rw-r--r-- 1 shell ext_data_rw 772 2023-12-02 13:10 System40.ini
-rw-r--r-- 1 shell ext_data_rw 4 2010-08-24 13:00 Version.txt
-rw-r--r-- 1 shell ext_data_rw 352256 2001-05-30 00:00 ijl15.dll
drwxrws--- 2 shell ext_data_rw 3452 2023-12-02 13:18 movie
-rw-r--r-- 1 shell ext_data_rw 4273 2023-12-02 13:10 【必読】Readme_大戦国ランス.txt
-rw-r--r-- 1 shell ext_data_rw 12802767 2023-12-02 13:10 戦国ランス.ain
-rw-r--r-- 1 shell ext_data_rw 303199760 2023-12-02 13:10 戦国ランスBA.ald
-rw-r--r-- 1 shell ext_data_rw 6138 2023-12-02 13:10 戦国ランスBA.bgi
-rw-r--r-- 1 shell ext_data_rw 110 2006-10-30 10:52 戦国ランスDLL.inc
-rw-r--r-- 1 shell ext_data_rw 988933136 2023-12-02 13:10 戦国ランスGA.ald
-rw-r--r-- 1 shell ext_data_rw 480462352 2023-12-02 13:10 戦国ランスGB.ald
-rw-r--r-- 1 shell ext_data_rw 54981904 2023-12-02 13:10 戦国ランスWA.ald
-rw-r--r-- 1 shell ext_data_rw 26835 2023-12-02 13:10 戦国ランスWA.wai
-rw-r--r-- 1 shell ext_data_rw 8383504 2023-12-02 13:10 戦国ランスWB.ald
グループ?の書込み権限がなかったようです。
chmod にてfiles
以下のディレクトリに書込み権限を付与したら最新版でも起動するようになりました。
Snapshot-2023-12-01で実装したZIP経由でのインストールを使う方法もあります。
1. ゲームのフォルダ全体をZIP圧縮する 2. USB経由でAndroidの`Download`以下にコピー 3. xsystem4-androidの「ZIPからインストール」でコピーしたZIPを選択
この方法ではxsystem4-android自体が
io.github.kichikuou.xsystem4/files/
以下にファイルを書き込むので、アクセス権の問題は起きないはずです。
この方法でも上手くいきました。
こちらの環境の問題だったようですみません。 助かりました、ありがとうございます。
ちなみに io.github.kichikuou.xsystem4
ディレクトリは表示されないままですが、Googleコミュニティで情報を募ったところAndroid12以降の仕様だとの情報がありました。
現状はroot化などの非正規の手段でないとどうしようもなさそうなので諦めます。
ちなみに io.github.kichikuou.xsystem4 ディレクトリは表示されないままですが、Googleコミュニティで情報を募ったところAndroid12以降の仕様だとの情報がありました。
kakurezatoさんのPixel3a (Android12)や私のPixel 7a (Android 14)で動いているという状況と矛盾するのでその情報は正しくないと思いますが、手元で再現できないとこれ以上の調査は難しいです。お手数ですが当面はZIPからインストールする方法での対処をお願いします。
ちなみに io.github.kichikuou.xsystem4 ディレクトリは表示されないままですが、Googleコミュニティで情報を募ったところAndroid12以降の仕様だとの情報がありました。
kakurezatoさんのPixel3a (Android12)や私のPixel 7a (Android 14)で動いているという状況と矛盾するのでその情報は正しくないと思いますが、手元で再現できないとこれ以上の調査は難しいです。お手数ですが当面はZIPからインストールする方法での対処をお願いします。
個人的にはAndroid14で出ていたストレージにアクセス出来ない不具合に近いのかなと思っています。 複数のGoogleアカウントでログインしている状態なのでその辺りも関係してるかも?
最新版でプレイできるようになっただけで十分すぎるほどありがたいです。 アプリ側の問題でもなさそうですし気になさることもないかと。 こちらで対応可能なので今後も楽しませていただきます。 対応のほど、ありがとうございました。
いつも楽しませて頂いております。 不具合というか、OS側の問題ではないかと思いますがご報告です。
Pixel6を使っておりAndroidのバージョンが14なのですが、USBでのデータ転送でAndroid/dataへの書込が出来ないようでした。 一応adbでデータを入れることができました。
ただ今度はアプリが起動時にクラッシュするようになりました。 クラッシュに関してはxsystem4のバージョンをSnapshot-2023-04-19まで落とすことで解決しました。(Snapshot-2023-08-27及びSnapshot-2023-12-01ではクラッシュする)
以前使っていたPixel3a(Android12)ではSnapshot-2023-12-01でもデータ転送、クラッシュに関する問題は発生しませんでした。