원인 분석
- 일단 AndoridMnaifest 파일안에 해당 권한을 사용하고 있는 곳은 없었다.
전체찾기로 사용하고 있는 곳을 찾아봤는데..
- Unity.Notifications.Tests 의 internal class 인 PostprocessorTests 라는 유니티 패키지 캐시 파일이 존재했고
여기서 해당 권한을 사용하고 있었다.. 더 깊이 찾아보니 이게 유니티 패키지인 Mobile Notification 패키지안에 들어가있는 클래스였다.
해결 방법
- AndroidManifest 파일에 지우고 싶은 권한이 있는지 확인하기. 나같은 경우는 READ_EXTERNAL_STORAGE
- 컴파일러(라이더or비쥬얼스튜디오)에서 전체 찾기 모드로 빼고 싶은 권한을 검색해서 사용하고 있는 곳이 있는지 확인하기.
- 권한 예시
1 2 3 4 5
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" android:minSdkVersion="33" /> <uses-permission android:name="android.permission.READ_MEDIA_VIDEO" android:minSdkVersion="33" /> <uses-permission android:name="android.permission.READ_MEDIA_AUDIO" android:minSdkVersion="33" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="32" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" android:maxSdkVersion="32" />
- 만약 빼고싶은 권한이 있다면 과감하게 삭제를 해주자.
- 하지만, 유니티 패키지, 플러그인 등에 포함되어 있을 경우가 있으니 확실하게 처리해줘야한다.