Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unity Android Playform Build 'UnauthorizedAccessException' cant read file path is denied #307

Open
ohm0106 opened this issue Dec 1, 2023 · 2 comments
Labels

Comments

@ohm0106
Copy link

ohm0106 commented Dec 1, 2023

Description of the bug

I have been using the native gallery 1.7.1 in Unity version 2018.4.36f1

I'm seeing the same bug as the title.
I tracked the issue and found that the bug started when I moved up to target version 12, and the bug log looks like this

[Error Log]
type=1400 audit(1701399599.022:406): avc: denied { read } for pid=13761 comm="UnityMain" name="sdcard" dev="tmpfs" ino=11066 scontext=u:r:untrusted_app_30:s0:c138,c258,c512,c768 tcontext=u:object_r:mnt_sdcard_file:s0 tclass=lnk_file permissive=0 SEPF_SM-G991N_12_0001 audit_filtered
2023-12-01 11:59:59.026 882-882 audit auditd E type=1300 audit(1701399599.022:406): arch=c00000b7 syscall=79 success=no exit=-13 a0=ffffff9c a1=b400006e74db0568 a2=6dc0b13ba0 a3=0 items=1 ppid=908 pid=13761 auid=4294967295 uid=10650 gid=10650 euid=10650 suid=10650 fsuid=10650 egid=10650 sgid=10650 fsgid=10650 tty=(none) ses=4294967295 comm="UnityMain" exe="/system/bin/app_process64" subj=u:r:untrusted_app_30:s0:c138,c258,c512,c768 key=(null)
2023-12-01 11:59:59.032 13761-13791 Unity com..********** E UnauthorizedAccessException: Access to the path "/storage/emulated/0/DCIM/하이라이트/hightlight_6_12-01_11-59-59.gif" is denied.
at System.IO.FileStream..ctor (System.String path, System.IO.FileMode mode, System.IO.FileAccess access, System.IO.FileShare share, System.Int32 bufferSize, System.Boolean anonymous, System.IO.FileOptions options) [0x00000] in <00000000000000000000000000000000>:0
at System.IO.File.Create (System.String path, System.Int32 bufferSize) [0x00000] in <00000000000000000000000000000000>:0
at System.IO.File.WriteAllBytes (System.String path, System.Byte[] bytes) [0x00000] in <00000000000000000000000000000000>:0
at uGIF.CaptureToGIF+d__32.MoveNext () [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) [0x00000] in <00000000000000000000000000000000>:0

                                                                                                (Filename: currently not available on il2cpp Line: -1)

How can I resolve this ploblem? Plz give me answer :(

Platform specs

Please provide the following info if this is a Unity 3D repository.

  • Unity version: e.g. 2018.4.36f1
  • Platform: Android
  • Device: Android 13
  • How did you download the plugin: GitHub

Additional info
Error :
"Unity android build UnauthorizedAccessException: Access to the file path is denied."

@ohm0106 ohm0106 added the bug label Dec 1, 2023
@ohm0106
Copy link
Author

ohm0106 commented Dec 1, 2023

The issue seems to be coming from that logic..

public static string GetAndroidInternalFilesDir()
{
    string[] potentialDirectories = new string[]
    {
        "/mnt/sdcard",
        "/storage/emulated/0",
        "/storage/sdcard0",
        "/storage/sdcard1",
        "/storage",
        "/sdcard",
    };

    if (Application.platform == RuntimePlatform.Android)
    {
        for (int i = 0; i < potentialDirectories.Length; i++)
        {
            if (Directory.Exists(potentialDirectories[i]))
            {
                return potentialDirectories[i];
            }
        }
    }

    return Application.persistentDataPath;
}

@yasirkula
Copy link
Owner

May I see the sections of your code that threw the exception? Particularly uGIF.CaptureToGIF function. Also I'm unaware of the GetAndroidInternalFilesDir function you've pasted above. Could you give more context on it?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants