Open AlJu90 opened 2 years ago
Android 12 data access auditing is not supported by this Library.
According to the documentation system creates null tags if no tags are declared in the manifest file, but everything is setup properly, so the right Attribution Tag should be used in every log-message:
null
2022-02-04 10:30:38.994 5773-5773/de.alex.example I/ExampleApplication$1[logPrivateDataAccess] - 103: Private data accessed. Operation: android:coarse_location Attribution Tag:locationAccessExample Stack Trace: android.app.AppOpsManager.noteProxyOpNoThrow(AppOpsManager.java:8389) androidx.core.app.AppOpsManagerCompat.noteProxyOpNoThrow(AppOpsManagerCompat.java:177) androidx.core.content.PermissionChecker.checkPermission(PermissionChecker.java:114) androidx.core.content.PermissionChecker.checkSelfPermission(PermissionChecker.java:134) permissions.dispatcher.PermissionUtils.hasSelfPermission(PermissionUtils.java:99) permissions.dispatcher.PermissionUtils.hasSelfPermissions(PermissionUtils.java:79) 2022-02-04 10:30:38.996 5773-5773/de.alex.example I/ExampleApplication$1[logPrivateDataAccess] - 103: Private data accessed. Operation: android:fine_location Attribution Tag:locationAccessExample Stack Trace: android.app.AppOpsManager.noteProxyOpNoThrow(AppOpsManager.java:8389) androidx.core.app.AppOpsManagerCompat.noteProxyOpNoThrow(AppOpsManagerCompat.java:177) androidx.core.content.PermissionChecker.checkPermission(PermissionChecker.java:114) androidx.core.content.PermissionChecker.checkSelfPermission(PermissionChecker.java:134) permissions.dispatcher.PermissionUtils.hasSelfPermission(PermissionUtils.java:99) permissions.dispatcher.PermissionUtils.hasSelfPermissions(PermissionUtils.java:79) 2022-02-04 10:30:40.674 5773-5773/de.alex.example I/ExampleApplication$1[logPrivateDataAccess] - 103: Private data accessed. Operation: android:fine_location Attribution Tag:locationAccessExample Stack Trace: android.app.AppOpsManager.noteOpNoThrow(AppOpsManager.java:8256) vqe.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0) akkc.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):24) akjm.apply(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0) akkf.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):24) akil.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0) akiz.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):1) akil.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0)
2022-02-04 10:30:38.994 5773-5773/de.alex.example I/ExampleApplication$1[logPrivateDataAccess] - 103: Private data accessed. Operation: android:coarse_location
Attribution Tag:locationAccessExample
Stack Trace:
android.app.AppOpsManager.noteProxyOpNoThrow(AppOpsManager.java:8389)
androidx.core.app.AppOpsManagerCompat.noteProxyOpNoThrow(AppOpsManagerCompat.java:177)
androidx.core.content.PermissionChecker.checkPermission(PermissionChecker.java:114)
androidx.core.content.PermissionChecker.checkSelfPermission(PermissionChecker.java:134)
permissions.dispatcher.PermissionUtils.hasSelfPermission(PermissionUtils.java:99)
permissions.dispatcher.PermissionUtils.hasSelfPermissions(PermissionUtils.java:79)
2022-02-04 10:30:38.996 5773-5773/de.alex.example I/ExampleApplication$1[logPrivateDataAccess] - 103: Private data accessed. Operation: android:fine_location
2022-02-04 10:30:40.674 5773-5773/de.alex.example I/ExampleApplication$1[logPrivateDataAccess] - 103: Private data accessed. Operation: android:fine_location
android.app.AppOpsManager.noteOpNoThrow(AppOpsManager.java:8256)
vqe.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0)
akkc.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):24)
akjm.apply(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0)
akkf.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):24)
akil.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0)
akiz.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):1)
Instead the Attribution Tag is null when using this library:
2022-02-04 10:30:38.994 5773-5773/de.alex.example I/ExampleApplication$1[logPrivateDataAccess] - 103: Private data accessed. Operation: android:coarse_location Attribution Tag:null Stack Trace: android.app.AppOpsManager.noteProxyOpNoThrow(AppOpsManager.java:8389) androidx.core.app.AppOpsManagerCompat.noteProxyOpNoThrow(AppOpsManagerCompat.java:177) androidx.core.content.PermissionChecker.checkPermission(PermissionChecker.java:114) androidx.core.content.PermissionChecker.checkSelfPermission(PermissionChecker.java:134) permissions.dispatcher.PermissionUtils.hasSelfPermission(PermissionUtils.java:99) permissions.dispatcher.PermissionUtils.hasSelfPermissions(PermissionUtils.java:79) 2022-02-04 10:30:38.996 5773-5773/de.alex.example I/ExampleApplication$1[logPrivateDataAccess] - 103: Private data accessed. Operation: android:fine_location Attribution Tag:null Stack Trace: android.app.AppOpsManager.noteProxyOpNoThrow(AppOpsManager.java:8389) androidx.core.app.AppOpsManagerCompat.noteProxyOpNoThrow(AppOpsManagerCompat.java:177) androidx.core.content.PermissionChecker.checkPermission(PermissionChecker.java:114) androidx.core.content.PermissionChecker.checkSelfPermission(PermissionChecker.java:134) permissions.dispatcher.PermissionUtils.hasSelfPermission(PermissionUtils.java:99) permissions.dispatcher.PermissionUtils.hasSelfPermissions(PermissionUtils.java:79) 2022-02-04 10:30:40.674 5773-5773/de.alex.example I/ExampleApplication$1[logPrivateDataAccess] - 103: Private data accessed. Operation: android:fine_location Attribution Tag:locationAccessExample Stack Trace: android.app.AppOpsManager.noteOpNoThrow(AppOpsManager.java:8256) vqe.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0) akkc.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):24) akjm.apply(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0) akkf.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):24) akil.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0) akiz.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):1) akil.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0)
Attribution Tag:null
Issue can be reproduced on any small example app following the short documentation and the usage guide of this library.
@AlJu90 any luck on this?
@DoozyDoz Nope, it is still broken
Overview
Android 12 data access auditing is not supported by this Library.
Expected
According to the documentation system creates
null
tags if no tags are declared in the manifest file, but everything is setup properly, so the right Attribution Tag should be used in every log-message:2022-02-04 10:30:38.994 5773-5773/de.alex.example I/ExampleApplication$1[logPrivateDataAccess] - 103: Private data accessed. Operation: android:coarse_location
Attribution Tag:locationAccessExample
Stack Trace:
android.app.AppOpsManager.noteProxyOpNoThrow(AppOpsManager.java:8389)
androidx.core.app.AppOpsManagerCompat.noteProxyOpNoThrow(AppOpsManagerCompat.java:177)
androidx.core.content.PermissionChecker.checkPermission(PermissionChecker.java:114)
androidx.core.content.PermissionChecker.checkSelfPermission(PermissionChecker.java:134)
permissions.dispatcher.PermissionUtils.hasSelfPermission(PermissionUtils.java:99)
permissions.dispatcher.PermissionUtils.hasSelfPermissions(PermissionUtils.java:79)
2022-02-04 10:30:38.996 5773-5773/de.alex.example I/ExampleApplication$1[logPrivateDataAccess] - 103: Private data accessed. Operation: android:fine_location
Attribution Tag:locationAccessExample
Stack Trace:
android.app.AppOpsManager.noteProxyOpNoThrow(AppOpsManager.java:8389)
androidx.core.app.AppOpsManagerCompat.noteProxyOpNoThrow(AppOpsManagerCompat.java:177)
androidx.core.content.PermissionChecker.checkPermission(PermissionChecker.java:114)
androidx.core.content.PermissionChecker.checkSelfPermission(PermissionChecker.java:134)
permissions.dispatcher.PermissionUtils.hasSelfPermission(PermissionUtils.java:99)
permissions.dispatcher.PermissionUtils.hasSelfPermissions(PermissionUtils.java:79)
2022-02-04 10:30:40.674 5773-5773/de.alex.example I/ExampleApplication$1[logPrivateDataAccess] - 103: Private data accessed. Operation: android:fine_location
Attribution Tag:locationAccessExample
Stack Trace:
android.app.AppOpsManager.noteOpNoThrow(AppOpsManager.java:8256)
vqe.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0)
akkc.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):24)
akjm.apply(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0)
akkf.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):24)
akil.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0)
akiz.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):1)
akil.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0)
Actual
Instead the Attribution Tag is
null
when using this library:2022-02-04 10:30:38.994 5773-5773/de.alex.example I/ExampleApplication$1[logPrivateDataAccess] - 103: Private data accessed. Operation: android:coarse_location
Attribution Tag:null
Stack Trace:
android.app.AppOpsManager.noteProxyOpNoThrow(AppOpsManager.java:8389)
androidx.core.app.AppOpsManagerCompat.noteProxyOpNoThrow(AppOpsManagerCompat.java:177)
androidx.core.content.PermissionChecker.checkPermission(PermissionChecker.java:114)
androidx.core.content.PermissionChecker.checkSelfPermission(PermissionChecker.java:134)
permissions.dispatcher.PermissionUtils.hasSelfPermission(PermissionUtils.java:99)
permissions.dispatcher.PermissionUtils.hasSelfPermissions(PermissionUtils.java:79)
2022-02-04 10:30:38.996 5773-5773/de.alex.example I/ExampleApplication$1[logPrivateDataAccess] - 103: Private data accessed. Operation: android:fine_location
Attribution Tag:null
Stack Trace:
android.app.AppOpsManager.noteProxyOpNoThrow(AppOpsManager.java:8389)
androidx.core.app.AppOpsManagerCompat.noteProxyOpNoThrow(AppOpsManagerCompat.java:177)
androidx.core.content.PermissionChecker.checkPermission(PermissionChecker.java:114)
androidx.core.content.PermissionChecker.checkSelfPermission(PermissionChecker.java:134)
permissions.dispatcher.PermissionUtils.hasSelfPermission(PermissionUtils.java:99)
permissions.dispatcher.PermissionUtils.hasSelfPermissions(PermissionUtils.java:79)
2022-02-04 10:30:40.674 5773-5773/de.alex.example I/ExampleApplication$1[logPrivateDataAccess] - 103: Private data accessed. Operation: android:fine_location
Attribution Tag:locationAccessExample
Stack Trace:
android.app.AppOpsManager.noteOpNoThrow(AppOpsManager.java:8256)
vqe.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0)
akkc.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):24)
akjm.apply(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0)
akkf.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):24)
akil.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0)
akiz.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):1)
akil.j(:com.google.android.gms@214815044@21.48.15 (190400-414534850):0)
Environment
Reproducible steps
Issue can be reproduced on any small example app following the short documentation and the usage guide of this library.