How to install Google Play Store manually on AOSPby@drjacky
5,999 reads

How to install Google Play Store manually on AOSP

Read on Terminal Reader

Too Long; Didn't Read


Companies Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - How to install Google Play Store manually on AOSP
Hossein Abbasi HackerNoon profile picture

@drjacky

Hossein Abbasi
react to story with heart

Google Play Store on AOSP

image

Image via androidauthority.com

Note: The AOSP versions which I’ve tested this solution is 4.2.2 and 4.4.2.

Add below snippet code after about lines 5634 iningrantSignaturePermissionmethod on PackageManagerService.java:

if (pkg.packageName.equals("com.android.vending") && compareSignatures(pkg.mSignatures, new Signature[]{new Signature("308204433082032ba003020102020900c2e08746644a308d300d06092a864886f70d01010405003074310b3009060355040613025553311330110603550408130a43616c69666f726e6961311630140603550407130d4d6f756e7461696e205669657731143012060355040a130b476f6f676c6520496e632e3110300e060355040b1307416e64726f69643110300e06035504031307416e64726f6964301e170d3038303832313233313333345a170d3336303130373233313333345a3074310b3009060355040613025553311330110603550408130a43616c69666f726e6961311630140603550407130d4d6f756e7461696e205669657731143012060355040a130b476f6f676c6520496e632e3110300e060355040b1307416e64726f69643110300e06035504031307416e64726f696430820120300d06092a864886f70d01010105000382010d00308201080282010100ab562e00d83ba208ae0a966f124e29da11f2ab56d08f58e2cca91303e9b754d372f640a71b1dcb130967624e4656a7776a92193db2e5bfb724a91e77188b0e6a47a43b33d9609b77183145ccdf7b2e586674c9e1565b1f4c6a5955bff251a63dabf9c55c27222252e875e4f8154a645f897168c0b1bfc612eabf785769bb34aa7984dc7e2ea2764cae8307d8c17154d7ee5f64a51a44a602c249054157dc02cd5f5c0e55fbef8519fbe327f0b1511692c5a06f19d18385f5c4dbc2d6b93f68cc2979c70e18ab93866b3bd5db8999552a0e3b4c99df58fb918bedc182ba35e003c1b4b10dd244a8ee24fffd333872ab5221985edab0fc0d0b145b6aa192858e79020103a381d93081d6301d0603551d0e04160414c77d8cc2211756259a7fd382df6be398e4d786a53081a60603551d2304819e30819b8014c77d8cc2211756259a7fd382df6be398e4d786a5a178a4763074310b3009060355040613025553311330110603550408130a43616c69666f726e6961311630140603550407130d4d6f756e7461696e205669657731143012060355040a130b476f6f676c6520496e632e3110300e060355040b1307416e64726f69643110300e06035504031307416e64726f6964820900c2e08746644a308d300c0603551d13040530030101ff300d06092a864886f70d010104050003820101006dd252ceef85302c360aaace939bcff2cca904bb5d7a1661f8ae46b2994204d0ff4a68c7ed1a531ec4595a623ce60763b167297a7ae35712c407f208f0cb109429124d7b106219c084ca3eb3f9ad5fb871ef92269a8be28bf16d44c8d9a08e6cb2f005bb3fe2cb96447e868e731076ad45b33f6009ea19c161e62641aa99271dfd5228c5c587875ddb7f452758d661f6cc0cccb7352e424cc4365c523532f7325137593c4ae341f4db41edda0d0b1071a7c440f0fe9ea01cb627ca674369d084bd2fd911ff06cdbf2cfa10dc0f893ae35762919048c7efc64c7144178342f70581c9de573af55b390dd7fdb9418631895d5f759f30112687ff621410c069308a")}) == PackageManager.SIGNATURE_MATCH){allowed = true;}

The path to the PackageManagerService file is /android/sourcecode/frameworks/base/services/java/com/android/server/pm

So, it becomes something like this:

Then install these APKs:

adb install com.google.android.gms-6.6.03_(1681564-036)-6603036-minAPI9.apk

adb install GoogleLoginService.apk (Version: 4.4.4-1227136Notice: this number seen in Application Manager in android)

adb install GoogleServicesFramework.apk(Like above line)

adb install com.android.vending_6.1.12-80441200_minAPI9(nodpi)ByMe.apk(Version: 6.6.03(1681564-036))

Remember to download and install the latest versions from Here.

Below lines are not necessary probably (Cause we’ve added that signature), but do it just to be sure:

adb shell pm grant com.google.android.gms android.permission.INTERACT_ACROSS_USERSadb shell pm grant com.google.android.gms android.permission.READ_LOGSadb shell pm grant com.google.android.gms android.permission.WRITE_SECURE_SETTINGS//adb shell pm grant com.google.android.gms android.permission.ACCESS_DOWNLOAD_MANAGER//adb shell pm grant com.google.android.gms android.permission.CHANGE_CONFIGURATION//adb shell pm grant com.google.android.gms android.permission.MANAGE_USERS

If you don’t want to install APKs each time after the reset factory, or you’re going to build your own device with the AOSP (as same as us!)

Add below snippet code to your init file:

pm grant com.google.android.gms android.permission.INTERACT_ACROSS_USERS;pm grant com.google.android.gms android.permission.READ_LOGS;pm grant com.google.android.gms android.permission.WRITE_SECURE_SETTINGS;pm grant com.google.android.gms android.permission.WRITE_SECURE_SETTINGS;#pm grant com.google.android.gms android.permission.ACCESS_DOWNLOAD_MANAGER;#pm grant com.google.android.gms android.permission.CHANGE_CONFIGURATION;

If above solution doesn’t work for you (For more information, look at this Stackoverflow discussion), to add extra permission to those prebuilt applications, use below snippet code:

include $(CLEAR_VARS)LOCAL_MODULE_TAGS := optionalLOCAL_MODULE := apkname.apkLOCAL_MODULE_CLASS := APPSLOCAL_PRIVILEGED_MODULE := trueLOCAL_CERTIFICATE := PRESIGNEDLOCAL_MODULE_PATH := $(TARGET_OUT)/priv-appLOCAL_SRC_FILES := apkname.apkinclude $(BUILD_PREBUILT)

Note: This snipped code will copy APK to the_/system/priv-app_ folder, to be eligible for system permissions.

Now run Google Play Store application; not anything else; Login and enjoy!

image

RELATED STORIES

L O A D I N G
. . . comments & more!
Hackernoon hq - po box 2206, edwards, colorado 81632, usa