Disabling Google Apps in GMS

Some customers would like to use Google Maps (and possibly Gmail and Chrome) but to hide the other GMS applications which are installed in the GMS OS builds :

 

blog1_pic1.png

 

The AppMgr CSP provides a straightforward way to disable these apps via either StageNow or the EMDK. Using StageNow a profile can be created which selectively disables each app using the package name which you can query using the command ‘adb shell pm list packages’:

 

blog1_pic2.png

 

 

 

The relevant package names for GMS apps are as shown in the XML extract below:

 

<characteristic version="4.2" type="AppMgr">

<parm name="Action" value="DisableApplication" />

<parm name="Package" value="com.google.android.youtube" />

</characteristic>

<!--SettingID=309-->

<characteristic version="4.2" type="AppMgr">

<parm name="Action" value="DisableApplication" />

<parm name="Package" value="com.google.android.music" />

</characteristic>

<!--SettingID=310-->

<characteristic version="4.2" type="AppMgr">

<parm name="Action" value="DisableApplication" />

<parm name="Package" value="com.google.android.play.games" />

</characteristic>

<!--SettingID=311-->

<characteristic version="4.2" type="AppMgr">

<parm name="Action" value="DisableApplication" />

<parm name="Package" value="com.google.android.apps.books" />

</characteristic>

<!--SettingID=312-->

<characteristic version="4.2" type="AppMgr">

<parm name="Action" value="DisableApplication" />

<parm name="Package" value="com.google.android.videos" />

</characteristic>

<!--SettingID=313-->

<characteristic version="4.2" type="AppMgr">

<parm name="Action" value="DisableApplication" />

<parm name="Package" value="com.google.android.talk" />

</characteristic>

<!--SettingID=314-->

<characteristic version="4.2" type="AppMgr">

<parm name="Action" value="DisableApplication" />

<parm name="Package" value="com.google.android.apps.docs" />

</characteristic>

<!--SettingID=315-->

<characteristic version="4.2" type="AppMgr">

<parm name="Action" value="DisableApplication" />

<parm name="Package" value="com.android.vending" />

</characteristic>

<!--SettingID=316-->

<characteristic version="4.2" type="AppMgr">

<parm name="Action" value="DisableApplication" />

<parm name="Package" value="com.google.android.apps.magazines" />

</characteristic>

 

 

The format for the AppMgr CSP step in StageNow is as follows:

 

blog1_pic3.png

After creating a StageNow profile which disables the relevant apps , the resulting barcode can be scanned and after a short delay of approx 30s , the specified apps will be removed from the Program Launcher :

 

 

blog1_pic4.png

 

Note that the profile can be made persistent via adding a PersistMgr step which will reapply the profile after an enterprise reset – this step looks similar to the following and should be the last step in the profile

 

blog1_pic5.png

 

Note also that apps can be selectively re-enabled using the same AppMgr CSP with Enable Application selected and the relevant package name. A non-persistent example StageNow profile which disables all GMS apps apart from Maps,  Gmail and Chrome is attached together with the barcode.

 

***** Update July 16 *****

 

One additional benefit of disabling unused GMS apps is that it will free up RAM which may be limited on some devices. As an example, a TC55 with GMS OS 2.65 can have over 200MB extra RAM available after applying the attached GMS disable profile and rebooting as shown in the screenshots below:

 

 

gms1.pnggms2.png

  Before GMS App Disable                                             After GMS App Disable