Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
A
all
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 1
    • Issues 1
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 1
    • Merge Requests 1
  • Operations
    • Operations
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • OpenGApps
  • all
  • Issues
  • #3

Closed
Open
Opened Jun 25, 2020 by dianlujitao@dianlujitao

com.google.android.gms.persistent missing permission

I consistently got the following warning:

06-25 18:25:24.699  1556  2445 E DatabaseUtils: Writing exception to parcel
06-25 18:25:24.699  1556  2445 E DatabaseUtils: java.lang.SecurityException: Permission denial: writing to settings requires:android.permission.WRITE_DEVICE_CONFIG
06-25 18:25:24.699  1556  2445 E DatabaseUtils:         at com.android.providers.settings.SettingsProvider.enforceWritePermission(SettingsProvider.java:2018)
06-25 18:25:24.699  1556  2445 E DatabaseUtils:         at com.android.providers.settings.SettingsProvider.mutateConfigSetting(SettingsProvider.java:1109)
06-25 18:25:24.699  1556  2445 E DatabaseUtils:         at com.android.providers.settings.SettingsProvider.insertConfigSetting(SettingsProvider.java:1087)
06-25 18:25:24.699  1556  2445 E DatabaseUtils:         at com.android.providers.settings.SettingsProvider.call(SettingsProvider.java:421)
06-25 18:25:24.699  1556  2445 E DatabaseUtils:         at android.content.ContentProvider.call(ContentProvider.java:2152)
06-25 18:25:24.699  1556  2445 E DatabaseUtils:         at android.content.ContentProvider$Transport.call(ContentProvider.java:477)
06-25 18:25:24.699  1556  2445 E DatabaseUtils:         at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:277)
06-25 18:25:24.699  1556  2445 E DatabaseUtils:         at android.os.Binder.execTransactInternal(Binder.java:1021)
06-25 18:25:24.699  1556  2445 E DatabaseUtils:         at android.os.Binder.execTransact(Binder.java:994)
06-25 18:25:24.706  2357  7760 W aodo    : updateFromConfigurations failed with SecurityException [CONTEXT service_id=204 ]
06-25 18:25:24.706  2357  7760 W aodo    : java.lang.SecurityException: Permission denial: writing to settings requires:android.permission.WRITE_DEVICE_CONFIG
06-25 18:25:24.706  2357  7760 W aodo    :      at android.os.Parcel.createException(Parcel.java:2071)
06-25 18:25:24.706  2357  7760 W aodo    :      at android.os.Parcel.readException(Parcel.java:2039)
06-25 18:25:24.706  2357  7760 W aodo    :      at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:188)
06-25 18:25:24.706  2357  7760 W aodo    :      at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:140)
06-25 18:25:24.706  2357  7760 W aodo    :      at android.content.ContentProviderProxy.call(ContentProviderNative.java:658)
06-25 18:25:24.706  2357  7760 W aodo    :      at android.provider.Settings$NameValueCache.putStringForUser(Settings.java:2312)
06-25 18:25:24.706  2357  7760 W aodo    :      at android.provider.Settings$Config.putString(Settings.java:15161)
06-25 18:25:24.706  2357  7760 W aodo    :      at android.provider.DeviceConfig.setProperty(DeviceConfig.java:538)
06-25 18:25:24.706  2357  7760 W aodo    :      at aodm.a(:com.google.android.gms@202117037@20.21.17 (120400-316502805):2)
06-25 18:25:24.706  2357  7760 W aodo    :      at aodo.a(:com.google.android.gms@202117037@20.21.17 (120400-316502805):25)
06-25 18:25:24.706  2357  7760 W aodo    :      at aodo.b(:com.google.android.gms@202117037@20.21.17 (120400-316502805):39)
06-25 18:25:24.706  2357  7760 W aodo    :      at aodo.a(:com.google.android.gms@202117037@20.21.17 (120400-316502805):54)
06-25 18:25:24.706  2357  7760 W aodo    :      at aodo.f(:com.google.android.gms@202117037@20.21.17 (120400-316502805):4)
06-25 18:25:24.706  2357  7760 W aodo    :      at aodo.d(:com.google.android.gms@202117037@20.21.17 (120400-316502805):29)
06-25 18:25:24.706  2357  7760 W aodo    :      at com.google.android.gms.platformconfigurator.PhenotypeConfigurationUpdateListener.a(:com.google.android.gms@202117037@20.21.17 (120400-316502805):4)
06-25 18:25:24.706  2357  7760 W aodo    :      at com.google.android.gms.platformconfigurator.PhenotypeConfigurationUpdateListener.onHandleIntent(:com.google.android.gms@202117037@20.21.17 (120400-316502805):16)
06-25 18:25:24.706  2357  7760 W aodo    :      at com.google.android.chimera.IntentOperation.onHandleIntent(:com.google.android.gms@202117037@20.21.17 (120400-316502805):2)
06-25 18:25:24.706  2357  7760 W aodo    :      at qgs.onHandleIntent(:com.google.android.gms@202117037@20.21.17 (120400-316502805):4)
06-25 18:25:24.706  2357  7760 W aodo    :      at ctx.run(:com.google.android.gms@202117037@20.21.17 (120400-316502805):5)
06-25 18:25:24.706  2357  7760 W aodo    :      at ctw.run(:com.google.android.gms@202117037@20.21.17 (120400-316502805):10)
06-25 18:25:24.706  2357  7760 W aodo    :      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
06-25 18:25:24.706  2357  7760 W aodo    :      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
06-25 18:25:24.706  2357  7760 W aodo    :      at java.lang.Thread.run(Thread.java:919)

It's fixed after adding the following to /etc/default-permissions/opengapps-permissions-q.xml, however it turns out that I'm not even allowed to fork a project here thus unable to make a merge request.

    <exception package="com.google.android.gms.persistent">
        <permission name="android.permission.WRITE_DEVICE_CONFIG" fixed="false"/>
    </exception>
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: opengapps/all#3