Skip to content

Commit 4d39770

Browse files
oSumAtrIXLisoUseInAIKyrios
authored andcommitted
fix(YouTube - GmsCore support): Add more replacements
1 parent 2c5d390 commit 4d39770

File tree

1 file changed

+221
-84
lines changed

1 file changed

+221
-84
lines changed

src/main/kotlin/app/revanced/patches/shared/misc/gms/BaseGmsCoreSupportPatch.kt

+221-84
Original file line numberDiff line numberDiff line change
@@ -236,131 +236,268 @@ abstract class BaseGmsCoreSupportPatch(
236236
/**
237237
* A collection of permissions, intents and content provider authorities
238238
* that are present in GmsCore which need to be transformed.
239-
*
240-
* NOTE: The following were present, but it seems like they are not needed to be transformed:
241-
* - com.google.android.gms.chimera.GmsIntentOperationService
242-
* - com.google.android.gms.phenotype.internal.IPhenotypeCallbacks
243-
* - com.google.android.gms.phenotype.internal.IPhenotypeService
244-
* - com.google.android.gms.phenotype.PACKAGE_NAME
245-
* - com.google.android.gms.phenotype.UPDATE
246-
* - com.google.android.gms.phenotype
247239
*/
248240
private object Constants {
249241
/**
250-
* A list of all permissions.
242+
* All permissions.
251243
*/
252244
val PERMISSIONS = setOf(
253-
// C2DM / GCM
254245
"com.google.android.c2dm.permission.RECEIVE",
255246
"com.google.android.c2dm.permission.SEND",
256-
"com.google.android.gtalkservice.permission.GTALK_SERVICE",
257-
258-
// GAuth
247+
"com.google.android.gms.auth.api.phone.permission.SEND",
248+
"com.google.android.gms.permission.AD_ID",
249+
"com.google.android.gms.permission.AD_ID_NOTIFICATION",
250+
"com.google.android.gms.permission.CAR_FUEL",
251+
"com.google.android.gms.permission.CAR_INFORMATION",
252+
"com.google.android.gms.permission.CAR_MILEAGE",
253+
"com.google.android.gms.permission.CAR_SPEED",
254+
"com.google.android.gms.permission.CAR_VENDOR_EXTENSION",
259255
"com.google.android.googleapps.permission.GOOGLE_AUTH",
260256
"com.google.android.googleapps.permission.GOOGLE_AUTH.cp",
261257
"com.google.android.googleapps.permission.GOOGLE_AUTH.local",
262258
"com.google.android.googleapps.permission.GOOGLE_AUTH.mail",
263259
"com.google.android.googleapps.permission.GOOGLE_AUTH.writely",
260+
"com.google.android.gtalkservice.permission.GTALK_SERVICE",
261+
"com.google.android.providers.gsf.permission.READ_GSERVICES",
264262
)
265263

266264
/**
267265
* All intent actions.
268266
*/
269267
val ACTIONS = setOf(
270-
// location
271-
"com.google.android.gms.location.places.ui.PICK_PLACE",
272-
"com.google.android.gms.location.places.GeoDataApi",
273-
"com.google.android.gms.location.places.PlacesApi",
274-
"com.google.android.gms.location.places.PlaceDetectionApi",
275-
"com.google.android.gms.wearable.MESSAGE_RECEIVED",
276-
277-
// C2DM / GCM
268+
"com.google.android.c2dm.intent.RECEIVE",
278269
"com.google.android.c2dm.intent.REGISTER",
279270
"com.google.android.c2dm.intent.REGISTRATION",
280271
"com.google.android.c2dm.intent.UNREGISTER",
281-
"com.google.android.c2dm.intent.RECEIVE",
282-
"com.google.iid.TOKEN_REQUEST",
272+
"com.google.android.contextmanager.service.ContextManagerService.START",
283273
"com.google.android.gcm.intent.SEND",
284-
285-
// car
286-
"com.google.android.gms.car.service.START",
287-
288-
// people
289-
"com.google.android.gms.people.service.START",
290-
291-
// wearable
292-
"com.google.android.gms.wearable.BIND",
293-
294-
// auth
295-
"com.google.android.gsf.login",
296-
"com.google.android.gsf.action.GET_GLS",
297-
"com.google.android.gms.common.account.CHOOSE_ACCOUNT",
298-
"com.google.android.gms.auth.login.LOGIN",
274+
"com.google.android.gms.accounts.ACCOUNT_SERVICE",
275+
"com.google.android.gms.accountsettings.ACCOUNT_PREFERENCES_SETTINGS",
276+
"com.google.android.gms.accountsettings.action.BROWSE_SETTINGS",
277+
"com.google.android.gms.accountsettings.action.VIEW_SETTINGS",
278+
"com.google.android.gms.accountsettings.MY_ACCOUNT",
279+
"com.google.android.gms.accountsettings.PRIVACY_SETTINGS",
280+
"com.google.android.gms.accountsettings.SECURITY_SETTINGS",
281+
"com.google.android.gms.ads.gservice.START",
282+
"com.google.android.gms.ads.identifier.service.EVENT_ATTESTATION",
283+
"com.google.android.gms.ads.service.CACHE",
284+
"com.google.android.gms.ads.service.CONSENT_LOOKUP",
285+
"com.google.android.gms.ads.service.HTTP",
286+
"com.google.android.gms.analytics.service.START",
287+
"com.google.android.gms.app.settings.GoogleSettingsLink",
288+
"com.google.android.gms.appstate.service.START",
289+
"com.google.android.gms.appusage.service.START",
290+
"com.google.android.gms.asterism.service.START",
291+
"com.google.android.gms.audiomodem.service.AudioModemService.START",
292+
"com.google.android.gms.audit.service.START",
293+
"com.google.android.gms.auth.account.authapi.START",
294+
"com.google.android.gms.auth.account.authenticator.auto.service.START",
295+
"com.google.android.gms.auth.account.authenticator.chromeos.START",
296+
"com.google.android.gms.auth.account.authenticator.tv.service.START",
297+
"com.google.android.gms.auth.account.data.service.START",
299298
"com.google.android.gms.auth.api.credentials.PICKER",
300299
"com.google.android.gms.auth.api.credentials.service.START",
301-
"com.google.android.gms.auth.service.START",
302-
"com.google.firebase.auth.api.gms.service.START",
300+
"com.google.android.gms.auth.api.identity.service.authorization.START",
301+
"com.google.android.gms.auth.api.identity.service.credentialsaving.START",
302+
"com.google.android.gms.auth.api.identity.service.signin.START",
303+
"com.google.android.gms.auth.api.phone.service.InternalService.START",
304+
"com.google.android.gms.auth.api.signin.service.START",
303305
"com.google.android.gms.auth.be.appcert.AppCertService",
304-
305-
// fido
306+
"com.google.android.gms.auth.blockstore.service.START",
307+
"com.google.android.gms.auth.config.service.START",
308+
"com.google.android.gms.auth.cryptauth.cryptauthservice.START",
309+
"com.google.android.gms.auth.GOOGLE_SIGN_IN",
310+
"com.google.android.gms.auth.login.LOGIN",
311+
"com.google.android.gms.auth.proximity.devicesyncservice.START",
312+
"com.google.android.gms.auth.proximity.securechannelservice.START",
313+
"com.google.android.gms.auth.proximity.START",
314+
"com.google.android.gms.auth.service.START",
315+
"com.google.android.gms.backup.ACTION_BACKUP_SETTINGS",
316+
"com.google.android.gms.backup.G1_BACKUP",
317+
"com.google.android.gms.backup.G1_RESTORE",
318+
"com.google.android.gms.backup.GMS_MODULE_RESTORE",
319+
"com.google.android.gms.beacon.internal.IBleService.START",
320+
"com.google.android.gms.car.service.START",
321+
"com.google.android.gms.carrierauth.service.START",
322+
"com.google.android.gms.cast.firstparty.START",
323+
"com.google.android.gms.cast.remote_display.service.START",
324+
"com.google.android.gms.cast.service.BIND_CAST_DEVICE_CONTROLLER_SERVICE",
325+
"com.google.android.gms.cast_mirroring.service.START",
326+
"com.google.android.gms.checkin.BIND_TO_SERVICE",
327+
"com.google.android.gms.chromesync.service.START",
328+
"com.google.android.gms.clearcut.service.START",
329+
"com.google.android.gms.common.account.CHOOSE_ACCOUNT",
330+
"com.google.android.gms.common.download.START",
331+
"com.google.android.gms.common.service.START",
332+
"com.google.android.gms.common.telemetry.service.START",
333+
"com.google.android.gms.config.START",
334+
"com.google.android.gms.constellation.service.START",
335+
"com.google.android.gms.credential.manager.service.firstparty.START",
336+
"com.google.android.gms.deviceconnection.service.START",
337+
"com.google.android.gms.drive.ApiService.RESET_AFTER_BOOT",
338+
"com.google.android.gms.drive.ApiService.START",
339+
"com.google.android.gms.drive.ApiService.STOP",
340+
"com.google.android.gms.droidguard.service.INIT",
341+
"com.google.android.gms.droidguard.service.PING",
342+
"com.google.android.gms.droidguard.service.START",
343+
"com.google.android.gms.enterprise.loader.service.START",
344+
"com.google.android.gms.facs.cache.service.START",
345+
"com.google.android.gms.facs.internal.service.START",
346+
"com.google.android.gms.feedback.internal.IFeedbackService",
347+
"com.google.android.gms.fido.credentialstore.internal_service.START",
306348
"com.google.android.gms.fido.fido2.privileged.START",
307-
308-
// gass
309-
"com.google.android.gms.gass.START",
310-
311-
// games
312-
"com.google.android.gms.games.service.START",
349+
"com.google.android.gms.fido.fido2.regular.START",
350+
"com.google.android.gms.fido.fido2.zeroparty.START",
351+
"com.google.android.gms.fido.sourcedevice.service.START",
352+
"com.google.android.gms.fido.targetdevice.internal_service.START",
353+
"com.google.android.gms.fido.u2f.privileged.START",
354+
"com.google.android.gms.fido.u2f.thirdparty.START",
355+
"com.google.android.gms.fido.u2f.zeroparty.START",
356+
"com.google.android.gms.fitness.BleApi",
357+
"com.google.android.gms.fitness.ConfigApi",
358+
"com.google.android.gms.fitness.GoalsApi",
359+
"com.google.android.gms.fitness.GoogleFitnessService.START",
360+
"com.google.android.gms.fitness.HistoryApi",
361+
"com.google.android.gms.fitness.InternalApi",
362+
"com.google.android.gms.fitness.RecordingApi",
363+
"com.google.android.gms.fitness.SensorsApi",
364+
"com.google.android.gms.fitness.SessionsApi",
365+
"com.google.android.gms.fonts.service.START",
366+
"com.google.android.gms.freighter.service.START",
367+
"com.google.android.gms.games.internal.connect.service.START",
313368
"com.google.android.gms.games.PLAY_GAMES_UPGRADE",
314-
315-
// chimera
316-
"com.google.android.gms.chimera",
317-
318-
// fonts
319-
"com.google.android.gms.fonts",
320-
321-
// phenotype
322-
"com.google.android.gms.phenotype.service.START",
323-
324-
// location
325-
"com.google.android.gms.location.reporting.service.START",
326-
327-
// misc
369+
"com.google.android.gms.games.service.START",
370+
"com.google.android.gms.gass.START",
328371
"com.google.android.gms.gmscompliance.service.START",
329-
"com.google.android.gms.oss.licenses.service.START",
330-
"com.google.android.gms.tapandpay.service.BIND",
331-
"com.google.android.gms.measurement.START",
332-
"com.google.android.gms.languageprofile.service.START",
333-
"com.google.android.gms.clearcut.service.START",
372+
"com.google.android.gms.googlehelp.HELP",
373+
"com.google.android.gms.googlehelp.service.GoogleHelpService.START",
374+
"com.google.android.gms.growth.service.START",
375+
"com.google.android.gms.herrevad.services.LightweightNetworkQualityAndroidService.START",
376+
"com.google.android.gms.icing.INDEX_SERVICE",
334377
"com.google.android.gms.icing.LIGHTWEIGHT_INDEX_SERVICE",
335-
"com.google.android.gms.accountsettings.action.VIEW_SETTINGS",
336-
337-
// potoken
378+
"com.google.android.gms.identity.service.BIND",
379+
"com.google.android.gms.inappreach.service.START",
380+
"com.google.android.gms.instantapps.START",
381+
"com.google.android.gms.kids.service.START",
382+
"com.google.android.gms.languageprofile.service.START",
383+
"com.google.android.gms.learning.internal.dynamitesupport.START",
384+
"com.google.android.gms.learning.intservice.START",
385+
"com.google.android.gms.learning.predictor.START",
386+
"com.google.android.gms.learning.trainer.START",
387+
"com.google.android.gms.learning.training.background.START",
388+
"com.google.android.gms.location.places.GeoDataApi",
389+
"com.google.android.gms.location.places.PlaceDetectionApi",
390+
"com.google.android.gms.location.places.PlacesApi",
391+
"com.google.android.gms.location.reporting.service.START",
392+
"com.google.android.gms.location.settings.LOCATION_HISTORY",
393+
"com.google.android.gms.location.settings.LOCATION_REPORTING_SETTINGS",
394+
"com.google.android.gms.locationsharing.api.START",
395+
"com.google.android.gms.locationsharingreporter.service.START",
396+
"com.google.android.gms.lockbox.service.START",
397+
"com.google.android.gms.matchstick.lighter.service.START",
398+
"com.google.android.gms.mdm.services.DeviceManagerApiService.START",
399+
"com.google.android.gms.mdm.services.START",
400+
"com.google.android.gms.mdns.service.START",
401+
"com.google.android.gms.measurement.START",
402+
"com.google.android.gms.nearby.bootstrap.service.NearbyBootstrapService.START",
403+
"com.google.android.gms.nearby.connection.service.START",
404+
"com.google.android.gms.nearby.fastpair.START",
405+
"com.google.android.gms.nearby.messages.service.NearbyMessagesService.START",
406+
"com.google.android.gms.nearby.sharing.service.NearbySharingService.START",
407+
"com.google.android.gms.nearby.sharing.START_SERVICE",
408+
"com.google.android.gms.notifications.service.START",
409+
"com.google.android.gms.ocr.service.internal.START",
410+
"com.google.android.gms.ocr.service.START",
411+
"com.google.android.gms.oss.licenses.service.START",
412+
"com.google.android.gms.payse.service.BIND",
413+
"com.google.android.gms.people.contactssync.service.START",
414+
"com.google.android.gms.people.service.START",
415+
"com.google.android.gms.phenotype.service.START",
416+
"com.google.android.gms.photos.autobackup.service.START",
417+
"com.google.android.gms.playlog.service.START",
418+
"com.google.android.gms.plus.service.default.INTENT",
419+
"com.google.android.gms.plus.service.image.INTENT",
420+
"com.google.android.gms.plus.service.internal.START",
421+
"com.google.android.gms.plus.service.START",
338422
"com.google.android.gms.potokens.service.START",
339-
340-
// droidguard/ safetynet
341-
"com.google.android.gms.droidguard.service.START",
423+
"com.google.android.gms.pseudonymous.service.START",
424+
"com.google.android.gms.rcs.START",
425+
"com.google.android.gms.reminders.service.START",
426+
"com.google.android.gms.romanesco.MODULE_BACKUP_AGENT",
427+
"com.google.android.gms.romanesco.service.START",
342428
"com.google.android.gms.safetynet.service.START",
429+
"com.google.android.gms.scheduler.ACTION_PROXY_SCHEDULE",
430+
"com.google.android.gms.search.service.SEARCH_AUTH_START",
431+
"com.google.android.gms.semanticlocation.service.START_ODLH",
432+
"com.google.android.gms.sesame.service.BIND",
433+
"com.google.android.gms.settings.EXPOSURE_NOTIFICATION_SETTINGS",
434+
"com.google.android.gms.setup.auth.SecondDeviceAuth.START",
435+
"com.google.android.gms.signin.service.START",
436+
"com.google.android.gms.smartdevice.d2d.SourceDeviceService.START",
437+
"com.google.android.gms.smartdevice.d2d.TargetDeviceService.START",
438+
"com.google.android.gms.smartdevice.directtransfer.SourceDirectTransferService.START",
439+
"com.google.android.gms.smartdevice.directtransfer.TargetDirectTransferService.START",
440+
"com.google.android.gms.smartdevice.postsetup.PostSetupService.START",
441+
"com.google.android.gms.smartdevice.setup.accounts.AccountsService.START",
442+
"com.google.android.gms.smartdevice.wifi.START_WIFI_HELPER_SERVICE",
443+
"com.google.android.gms.social.location.activity.service.START",
444+
"com.google.android.gms.speech.service.START",
445+
"com.google.android.gms.statementservice.EXECUTE",
446+
"com.google.android.gms.stats.ACTION_UPLOAD_DROPBOX_ENTRIES",
447+
"com.google.android.gms.tapandpay.service.BIND",
448+
"com.google.android.gms.telephonyspam.service.START",
449+
"com.google.android.gms.testsupport.service.START",
450+
"com.google.android.gms.thunderbird.service.START",
451+
"com.google.android.gms.trustagent.BridgeApi.START",
452+
"com.google.android.gms.trustagent.StateApi.START",
453+
"com.google.android.gms.trustagent.trustlet.trustletmanagerservice.BIND",
454+
"com.google.android.gms.trustlet.bluetooth.service.BIND",
455+
"com.google.android.gms.trustlet.connectionlessble.service.BIND",
456+
"com.google.android.gms.trustlet.face.service.BIND",
457+
"com.google.android.gms.trustlet.nfc.service.BIND",
458+
"com.google.android.gms.trustlet.onbody.service.BIND",
459+
"com.google.android.gms.trustlet.place.service.BIND",
460+
"com.google.android.gms.trustlet.voiceunlock.service.BIND",
461+
"com.google.android.gms.udc.service.START",
462+
"com.google.android.gms.update.START_API_SERVICE",
463+
"com.google.android.gms.update.START_SERVICE",
464+
"com.google.android.gms.update.START_SINGLE_USER_API_SERVICE",
465+
"com.google.android.gms.update.START_TV_API_SERVICE",
466+
"com.google.android.gms.usagereporting.service.START",
467+
"com.google.android.gms.userlocation.service.START",
468+
"com.google.android.gms.vehicle.cabin.service.START",
469+
"com.google.android.gms.vehicle.climate.service.START",
470+
"com.google.android.gms.vehicle.info.service.START",
471+
"com.google.android.gms.wallet.service.BIND",
472+
"com.google.android.gms.walletp2p.service.firstparty.BIND",
473+
"com.google.android.gms.walletp2p.service.zeroparty.BIND",
474+
"com.google.android.gms.wearable.BIND",
475+
"com.google.android.gms.wearable.BIND_LISTENER",
476+
"com.google.android.gms.wearable.DATA_CHANGED",
477+
"com.google.android.gms.wearable.MESSAGE_RECEIVED",
478+
"com.google.android.gms.wearable.NODE_CHANGED",
479+
"com.google.android.gsf.action.GET_GLS",
480+
"com.google.android.location.settings.LOCATION_REPORTING_SETTINGS",
481+
"com.google.android.mdd.service.START",
482+
"com.google.android.mdh.service.listener.START",
483+
"com.google.android.mdh.service.START",
484+
"com.google.android.mobstore.service.START",
485+
"com.google.firebase.auth.api.gms.service.START",
486+
"com.google.firebase.dynamiclinks.service.START",
487+
"com.google.iid.TOKEN_REQUEST",
488+
"com.google.android.gms.location.places.ui.PICK_PLACE",
343489
)
344490

345491
/**
346492
* All content provider authorities.
347493
*/
348494
val AUTHORITIES = setOf(
349-
// gsf
350-
"com.google.android.gsf.gservices",
351-
"com.google.settings",
352-
353-
// auth
354495
"com.google.android.gms.auth.accounts",
355-
356-
// chimera
357496
"com.google.android.gms.chimera",
358-
359-
// fonts
360497
"com.google.android.gms.fonts",
361-
362-
// phenotype
363498
"com.google.android.gms.phenotype",
499+
"com.google.android.gsf.gservices",
500+
"com.google.settings",
364501
)
365502
}
366503

0 commit comments

Comments
 (0)