[MOD][XPOSED]Google Play Store (2013/07/05)

Search This thread

WonderEkin

Senior Member
Jul 7, 2007
162
306
Hi, I've built a dirty mod using Xposed framework to get Google Play store to work.


Script Installation

Requirement: Root your Ouya, adb tools
Files you need: ps4ouya_script.zip , download and extract them
  1. Sideload the Xposed framework, download link and installation guide from here.
  2. Execute RunMe.bat, that's it



_______________________________________________



Do this if the script didn't work
Manual Installation
Requirement: Root your Ouya, busybox installed, adb tools
Files you need: ps4ouya.zip , download and extract them
  1. Sideload the Xposed framework, download link and installation guide from here.
  2. Sideload Mod_PS4Ouya.apk and enable "Play Store Mod For Ouya" in the Xposed app
  3. Push these Google apk to /system/app
    Code:
    adb push com.android.vending.apk /sdcard/com.android.vending.apk
    adb push com.google.android.gms.apk /sdcard/com.google.android.gms.apk
    adb push GoogleLoginService.apk /sdcard/GoogleLoginService.apk
    adb push GoogleServicesFramework.apk /sdcard/GoogleServicesFramework.apk
    adb push NetworkLocation.apk /sdcard/NetworkLocation.apk
    Code:
    adb shell
    In the shell
    Code:
    su
    mount -orw,remount /system
    cat /sdcard/com.android.vending.apk > /system/app/com.android.vending.apk
    cat /sdcard/com.google.android.gms.apk > /system/app/com.google.android.gms.apk
    cat /sdcard/GoogleLoginService.apk > /system/app/GoogleLoginService.apk
    cat /sdcard/GoogleServicesFramework.apk > /system/app/GoogleServicesFramework.apk
    cat /sdcard/NetworkLocation.apk > /system/app/NetworkLocation.apk
    chmod 644 /system/app/com.android.vending.apk
    chmod 644 /system/app/com.google.android.gms.apk
    chmod 644 /system/app/GoogleLoginService.apk
    chmod 644 /system/app/GoogleServicesFramework.apk
    chmod 644 /system/app/NetworkLocation.apk
    mount -oro,remount /system
    reboot

Now the Play Store should ready to work.
If you can't find the Play Store in the MAKE menu, sideload the com.android.vending.apk again.
Code:
adb install -r com.android.vending.apk


Please see my other project
Mod Collection For Ouya(Play Store, OTA root keeper, Disable Auto Update, Overscan Fix & 720p)
 

Attachments

  • Mod_PS4Ouya.src.zip
    520.3 KB · Views: 4,378
Last edited:

MasterZen88

Senior Member
Hi, I've built a dirty mod using Xposed framework to get Google Play store to work.

Installation
Requirement: Root your Ouya, adb tools
Files you need: ps4ouya.zip , download and extract them
  1. Sideload the Xposed framework, download link and installation guide from here.
  2. Sideload Mod_PS4Ouya.apk and enable "Play Store Mod For Ouya" in the Xposed app
  3. Push these Google apk to /system/app
    Code:
    adb push com.android.vending.apk /sdcard/com.android.vending.apk
    adb push com.google.android.gms.apk /sdcard/com.google.android.gms.apk
    adb push GoogleLoginService.apk /sdcard/GoogleLoginService.apk
    adb push GoogleServicesFramework /sdcard/GoogleServicesFramework.apk
    adb push NetworkLocation.apk /sdcard/NetworkLocation.apk
    Code:
    adb shell
    In the shell
    Code:
    su
    mount -orw,remount /system
    cp /sdcard/com.android.vending.apk /system/app
    cp /sdcard/com.google.android.gms.apk /system/app
    cp /sdcard/GoogleLoginService.apk /system/app
    cp /sdcard/GoogleServicesFramework.apk /system/app
    cp /sdcard/NetworkLocation.apk /system/app
    chmod 644 /system/app/com.android.vending.apk
    chmod 644 /system/app/com.google.android.gms.apk
    chmod 644 /system/app/GoogleLoginService.apk
    chmod 644 /system/app/GoogleServicesFramework.apk
    chmod 644 /system/app/NetworkLocation.apk
    mount -oro,remount /system
    reboot

Now the Play Store should ready to work.
If you can't find the Play Store in the MAKE menu, sideload the com.android.vending.apk again.

Great.. Testing it out now. Is it okay if I use your work within ZG Rom?
 

professorpoptart

Senior Member
Jul 7, 2010
166
110
missing .apk on framework... for the copy pasters

adb push GoogleServicesFramework.apk /sdcard/GoogleServicesFramework.apk

also,
I had to use cat instead of cp

like:
cat /sdcard/GoogleServicesFramework.apk > /system/app/GoogleServicesFramework.apk

---------- Post added at 11:45 AM ---------- Previous post was at 11:18 AM ----------

so if you dont mind, us irc'ers are wondering... whats the magic with the ps4ouya.apk?
 
Last edited:
  • Like
Reactions: goo200

WonderEkin

Senior Member
Jul 7, 2007
162
306
Could you release the source of the PS4Ouya apk?
I can release the source if you guys confirm this mod works. Just bypass a method only, nothing secret.

cant establish reliable connection
What do you mean?

missing .apk on framework... for the copy pasters

adb push GoogleServicesFramework.apk /sdcard/GoogleServicesFramework.apk
Thanks for pointing that out
 

Akkeresu

Senior Member
Aug 16, 2010
77
7
Hi, I've built a dirty mod using Xposed framework to get Google Play store to work.

Installation
Requirement: Root your Ouya, adb tools
Files you need: ps4ouya.zip , download and extract them
  1. Sideload the Xposed framework, download link and installation guide from here.
  2. Sideload Mod_PS4Ouya.apk and enable "Play Store Mod For Ouya" in the Xposed app
  3. Push these Google apk to /system/app
    Code:
    adb push com.android.vending.apk /sdcard/com.android.vending.apk
    adb push com.google.android.gms.apk /sdcard/com.google.android.gms.apk
    adb push GoogleLoginService.apk /sdcard/GoogleLoginService.apk
    adb push GoogleServicesFramework /sdcard/GoogleServicesFramework.apk
    adb push NetworkLocation.apk /sdcard/NetworkLocation.apk
    Code:
    adb shell
    In the shell
    Code:
    su
    mount -orw,remount /system
    cp /sdcard/com.android.vending.apk /system/app
    cp /sdcard/com.google.android.gms.apk /system/app
    cp /sdcard/GoogleLoginService.apk /system/app
    cp /sdcard/GoogleServicesFramework.apk /system/app
    cp /sdcard/NetworkLocation.apk /system/app
    chmod 644 /system/app/com.android.vending.apk
    chmod 644 /system/app/com.google.android.gms.apk
    chmod 644 /system/app/GoogleLoginService.apk
    chmod 644 /system/app/GoogleServicesFramework.apk
    chmod 644 /system/app/NetworkLocation.apk
    mount -oro,remount /system
    reboot

Now the Play Store should ready to work.
If you can't find the Play Store in the MAKE menu, sideload the com.android.vending.apk again.
Code:
adb install -r com.android.vending.apk

Need to add .apk to "GoodleServicesFramework" push line.

Added my account just fine, but Google Play crashes on launch:

http://pastebin.com/J85uABZs

Reran the permissions portions and rebooted, just in case.

Good on ya for getting this far!

[EDIT] I'm gonna try using Vending DRM'ed files in a moment to test that aspect. If I can get DataSync+ working, then I may not need the actual Play Store. :3
 
Last edited:

WonderEkin

Senior Member
Jul 7, 2007
162
306
missing .apk on framework... for the copy pasters

adb push GoogleServicesFramework.apk /sdcard/GoogleServicesFramework.apk

also,
I had to use cat instead of cp

like:
cat /sdcard/GoogleServicesFramework.apk > /system/app/GoogleServicesFramework.apk

---------- Post added at 11:45 AM ---------- Previous post was at 11:18 AM ----------

so if you dont mind, us irc'ers are wondering... whats the magic with the ps4ouya.apk?

  1. Seems Ouya changes something to block some class properties like this one:
    Code:
    I/dalvikvm( 1568): DexOpt: access denied from Lcom/google/android/volley/elegant
    /ElegantThreadSafeConnManager$ElegantPool; to field Lorg/apache/http/impl/conn/t
    sccm/ConnPoolByRoute;.poolLock
    I tried to replace some file from Nexus7 rom but didn't work
  2. So i tired to mod the vending.apk to bypass this. And luckily, after I installed the XPOSED framework, those error are all gone, the Play Store shows but still get "Connection timed out" with a retry button.
    Code:
    E/Volley  ( 3492): [283] NetworkDispatcher.run: Unhandled exception org.apache.http.impl.conn.ConnectionShutdownException
    E/Volley  ( 3492): org.apache.http.impl.conn.ConnectionShutdownException
    E/Volley  ( 3492):      at org.apache.http.impl.conn.AbstractPooledConnAdapter.assertValid(AbstractPooledConnAdapter.java:91)
    E/Volley  ( 3492):      at org.apache.http.impl.conn.AbstractPooledConnAdapter.getRoute(AbstractPooledConnAdapter.java:116)
    E/Volley  ( 3492):      at com.google.android.volley.elegant.ElegantThreadSafeConnManager.releaseConnection(ElegantThreadSafeConnManager.java:75)
    E/Volley  ( 3492):      at org.apache.http.impl.conn.AbstractClientConnAdapter.releaseConnection(AbstractClientConnAdapter.java:307)
    E/Volley  ( 3492):      at org.apache.http.conn.BasicManagedEntity.releaseManagedConnection(BasicManagedEntity.java:191)
    E/Volley  ( 3492):      at org.apache.http.conn.BasicManagedEntity.eofDetected(BasicManagedEntity.java:145)
    E/Volley  ( 3492):      at org.apache.http.conn.EofSensorInputStream.checkEOF(EofSensorInputStream.java:211)
    E/Volley  ( 3492):      at org.apache.http.conn.EofSensorInputStream.read(EofSensorInputStream.java:139)
    E/Volley  ( 3492):      at java.io.SequenceInputStream.read(SequenceInputStream.java:190)
    E/Volley  ( 3492):      at java.io.InputStream.read(InputStream.java:163)
    E/Volley  ( 3492):      at com.android.volley.toolbox.BasicNetwork.entityToBytes(BasicNetwork.java:212)
    E/Volley  ( 3492):      at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:104)
    E/Volley  ( 3492):      at com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:105)
  3. So I tried to bypass org.apache.http.impl.conn.AbstractPooledConnAdapter.assertValid and WOW, the Play Store is working
 
  • Like
Reactions: professorpoptart

WonderEkin

Senior Member
Jul 7, 2007
162
306
Need to add .apk to "GoodleServicesFramework" push line.

Added my account just fine, but Google Play crashes on launch:

http://pastebin.com/J85uABZs

Reran the permissions portions and rebooted, just in case.

Good on ya for getting this far!

[EDIT] I'm gonna try using Vending DRM'ed files in a moment to test that aspect. If I can get DataSync+ working, then I may not need the actual Play Store. :3
Seems the Xposed installer can't replace the app_process
can you download this one and push it into /system/bin, chmod 755, reboot and start play store again?
 

professorpoptart

Senior Member
Jul 7, 2010
166
110
  1. Seems Ouya changes something to block some class properties like this one:
    Code:
    I/dalvikvm( 1568): DexOpt: access denied from Lcom/google/android/volley/elegant
    /ElegantThreadSafeConnManager$ElegantPool; to field Lorg/apache/http/impl/conn/t
    sccm/ConnPoolByRoute;.poolLock


  1. exactly what I was seeing, I have never used exposed before... something new to try next time we run into something like this. Awsome job! Now reap the sweet sweet internet karma! lol
 

MasterZen88

Senior Member
  1. Seems Ouya changes something to block some class properties like this one:
    Code:
    I/dalvikvm( 1568): DexOpt: access denied from Lcom/google/android/volley/elegant
    /ElegantThreadSafeConnManager$ElegantPool; to field Lorg/apache/http/impl/conn/t
    sccm/ConnPoolByRoute;.poolLock
    I tried to replace some file from Nexus7 rom but didn't work
  2. So i tired to mod the vending.apk to bypass this. And luckily, after I installed the XPOSED framework, those error are all gone, the Play Store shows but still get "Connection timed out" with a retry button.
    Code:
    E/Volley  ( 3492): [283] NetworkDispatcher.run: Unhandled exception org.apache.http.impl.conn.ConnectionShutdownException
    E/Volley  ( 3492): org.apache.http.impl.conn.ConnectionShutdownException
    E/Volley  ( 3492):      at org.apache.http.impl.conn.AbstractPooledConnAdapter.assertValid(AbstractPooledConnAdapter.java:91)
    E/Volley  ( 3492):      at org.apache.http.impl.conn.AbstractPooledConnAdapter.getRoute(AbstractPooledConnAdapter.java:116)
    E/Volley  ( 3492):      at com.google.android.volley.elegant.ElegantThreadSafeConnManager.releaseConnection(ElegantThreadSafeConnManager.java:75)
    E/Volley  ( 3492):      at org.apache.http.impl.conn.AbstractClientConnAdapter.releaseConnection(AbstractClientConnAdapter.java:307)
    E/Volley  ( 3492):      at org.apache.http.conn.BasicManagedEntity.releaseManagedConnection(BasicManagedEntity.java:191)
    E/Volley  ( 3492):      at org.apache.http.conn.BasicManagedEntity.eofDetected(BasicManagedEntity.java:145)
    E/Volley  ( 3492):      at org.apache.http.conn.EofSensorInputStream.checkEOF(EofSensorInputStream.java:211)
    E/Volley  ( 3492):      at org.apache.http.conn.EofSensorInputStream.read(EofSensorInputStream.java:139)
    E/Volley  ( 3492):      at java.io.SequenceInputStream.read(SequenceInputStream.java:190)
    E/Volley  ( 3492):      at java.io.InputStream.read(InputStream.java:163)
    E/Volley  ( 3492):      at com.android.volley.toolbox.BasicNetwork.entityToBytes(BasicNetwork.java:212)
    E/Volley  ( 3492):      at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:104)
    E/Volley  ( 3492):      at com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:105)
  3. So I tried to bypass org.apache.http.impl.conn.AbstractPooledConnAdapter.assertValid and WOW, the Play Store is working


How did you bypass that call??
 

professorpoptart

Senior Member
Jul 7, 2010
166
110
How did you bypass that call??


Heres the meat. basically hook the class and throw null. well done WonderEkin!
Class<?> clsAbstractPooledConnAdapter = findClass("org.apache.http.impl.conn.AbstractPooledConnAdapter", lpparam.classLoader);
findAndHookMethod(clsAbstractPooledConnAdapter, "assertValid", org.apache.http.impl.conn.AbstractPoolEntry.class, new XC_MethodReplacement() {
@Override
protected Object replaceHookedMethod(MethodHookParam param) throws Throwable {
return null;
}
});
}
}
 

Top Liked Posts

  • There are no posts matching your filters.
  • 47
    Hi, I've built a dirty mod using Xposed framework to get Google Play store to work.


    Script Installation

    Requirement: Root your Ouya, adb tools
    Files you need: ps4ouya_script.zip , download and extract them
    1. Sideload the Xposed framework, download link and installation guide from here.
    2. Execute RunMe.bat, that's it



    _______________________________________________



    Do this if the script didn't work
    Manual Installation
    Requirement: Root your Ouya, busybox installed, adb tools
    Files you need: ps4ouya.zip , download and extract them
    1. Sideload the Xposed framework, download link and installation guide from here.
    2. Sideload Mod_PS4Ouya.apk and enable "Play Store Mod For Ouya" in the Xposed app
    3. Push these Google apk to /system/app
      Code:
      adb push com.android.vending.apk /sdcard/com.android.vending.apk
      adb push com.google.android.gms.apk /sdcard/com.google.android.gms.apk
      adb push GoogleLoginService.apk /sdcard/GoogleLoginService.apk
      adb push GoogleServicesFramework.apk /sdcard/GoogleServicesFramework.apk
      adb push NetworkLocation.apk /sdcard/NetworkLocation.apk
      Code:
      adb shell
      In the shell
      Code:
      su
      mount -orw,remount /system
      cat /sdcard/com.android.vending.apk > /system/app/com.android.vending.apk
      cat /sdcard/com.google.android.gms.apk > /system/app/com.google.android.gms.apk
      cat /sdcard/GoogleLoginService.apk > /system/app/GoogleLoginService.apk
      cat /sdcard/GoogleServicesFramework.apk > /system/app/GoogleServicesFramework.apk
      cat /sdcard/NetworkLocation.apk > /system/app/NetworkLocation.apk
      chmod 644 /system/app/com.android.vending.apk
      chmod 644 /system/app/com.google.android.gms.apk
      chmod 644 /system/app/GoogleLoginService.apk
      chmod 644 /system/app/GoogleServicesFramework.apk
      chmod 644 /system/app/NetworkLocation.apk
      mount -oro,remount /system
      reboot

    Now the Play Store should ready to work.
    If you can't find the Play Store in the MAKE menu, sideload the com.android.vending.apk again.
    Code:
    adb install -r com.android.vending.apk


    Please see my other project
    Mod Collection For Ouya(Play Store, OTA root keeper, Disable Auto Update, Overscan Fix & 720p)
    3
    Since the dev is MIA on this... Im gonna tear this apart and try fixing the google play error. I want this fixed as well. I perfer my stock system. May e one day, Ouya will give out a good system update and i dont want to miss it.

    Sent from my HTC One_M8 using Tapatalk
    3
    source attached
    3
    just confirming paid ouya apps and paid play store apps working!
    2
    If you are having trouble, like I was, use this code instead. The only change I made was using cat instead of cp. Thanks again to all those involved in getting Google Play to work.

    Code:
    su
    mount -orw,remount /system
    cat /sdcard/com.android.vending.apk > /system/app/com.android.vending.apk
    cat /sdcard/com.google.android.gms.apk > /system/app/com.google.android.gms.apk
    cat /sdcard/GoogleLoginService.apk > /system/app/GoogleLoginService.apk
    cat /sdcard/GoogleServicesFramework.apk > /system/app/GoogleServicesFramework.apk
    cat /sdcard/NetworkLocation.apk > /system/app/NetworkLocation.apk
    chmod 644 /system/app/com.android.vending.apk
    chmod 644 /system/app/com.google.android.gms.apk
    chmod 644 /system/app/GoogleLoginService.apk
    chmod 644 /system/app/GoogleServicesFramework.apk
    chmod 644 /system/app/NetworkLocation.apk
    mount -oro,remount /system
    reboot


    Hi, I've built a dirty mod using Xposed framework to get Google Play store to work.

    Installation
    Requirement: Root your Ouya, busybox installed, adb tools
    Files you need: ps4ouya.zip , download and extract them
    1. Sideload the Xposed framework, download link and installation guide from here.
    2. Sideload Mod_PS4Ouya.apk and enable "Play Store Mod For Ouya" in the Xposed app
    3. Push these Google apk to /system/app
      Code:
      adb push com.android.vending.apk /sdcard/com.android.vending.apk
      adb push com.google.android.gms.apk /sdcard/com.google.android.gms.apk
      adb push GoogleLoginService.apk /sdcard/GoogleLoginService.apk
      adb push GoogleServicesFramework.apk /sdcard/GoogleServicesFramework.apk
      adb push NetworkLocation.apk /sdcard/NetworkLocation.apk
      Code:
      adb shell
      In the shell
      Code:
      su
      mount -orw,remount /system
      cp /sdcard/com.android.vending.apk /system/app
      cp /sdcard/com.google.android.gms.apk /system/app
      cp /sdcard/GoogleLoginService.apk /system/app
      cp /sdcard/GoogleServicesFramework.apk /system/app
      cp /sdcard/NetworkLocation.apk /system/app
      chmod 644 /system/app/com.android.vending.apk
      chmod 644 /system/app/com.google.android.gms.apk
      chmod 644 /system/app/GoogleLoginService.apk
      chmod 644 /system/app/GoogleServicesFramework.apk
      chmod 644 /system/app/NetworkLocation.apk
      mount -oro,remount /system
      reboot

    Now the Play Store should ready to work.
    If you can't find the Play Store in the MAKE menu, sideload the com.android.vending.apk again.
    Code:
    adb install -r com.android.vending.apk