How to fix any Android app dependent on Google Maps API and make maps working
- Hi, would someone be able to try this with the Natwest Banking app and Quidco app?
Natwest: https://play.google.com/store/apps/d...ndroid.natwest
Quidco: https://play.google.com/store/apps/d...?id=com.quidco
Thanks
Daniel
Hey Daniel,
please do not link to play store. It is much easier if you provide links to .apk files10-26-13 09:46 AMLike 0 -
- I think Tinder is HUGE one people are trying to get, if someone figures it out, post here!!
Posted via CB1010-26-13 12:39 PMLike 0 -
- moneytoo: I'm trying out an app (The Transit App) that uses v2 and changed the IsGooglePlayAvailable method to the code you put in. I got an error when I went to recompile:
D:\BB10\DebugMethod\APKTools\apktool1.5.2>apktool b Transit TransitA.apk
I: Checking whether sources has changed...
I: Smaling...
[1367,4] Error for input '.param': Invalid directive
[1367,11] mismatched input 'p0' expecting END_METHOD_DIRECTIVE
Exception in thread "main" brut.androlib.AndrolibException: Could not smali file
: D:\BB10\DebugMethod\APKTools\apktool1.5.2\Transit\ smali\com\google\android\gms
\common\GooglePlayServicesUtil.smali
at brut.androlib.src.DexFileBuilder.addSmaliFile(DexF ileBuilder.java:45)
at brut.androlib.src.DexFileBuilder.addSmaliFile(DexF ileBuilder.java:33)
at brut.androlib.src.SmaliBuilder.buildFile(SmaliBuil der.java:66)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder. java:50)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder. java:37)
at brut.androlib.Androlib.buildSourcesSmali(Androlib. java:257)
at brut.androlib.Androlib.buildSources(Androlib.java: 214)
at brut.androlib.Androlib.build(Androlib.java:205)
at brut.androlib.Androlib.build(Androlib.java:176)
at brut.apktool.Main.cmdBuild(Main.java:228)
at brut.apktool.Main.main(Main.java:79)
Any ideas? Thanks10-26-13 02:02 PMLike 0 -
- Can I beg as well? It would make the whole country of Philippines thank you!
https://play.google.com/store/apps/d...droid.pckg.bpi
Posted via CB1010-26-13 04:05 PMLike 0 - Can I beg as well? It would make the whole country of Philippines thank you!
https://play.google.com/store/apps/d...droid.pckg.bpi
Posted via CB10
Posted via CB1010-26-13 04:11 PMLike 0 - 10-26-13 04:23 PMLike 0
- moneytoo: I'm trying out an app (The Transit App) that uses v2 and changed the IsGooglePlayAvailable method to the code you put in. I got an error when I went to recompile:
D:\BB10\DebugMethod\APKTools\apktool1.5.2>apktool b Transit TransitA.apk
I: Checking whether sources has changed...
I: Smaling...
[1367,4] Error for input '.param': Invalid directive
[1367,11] mismatched input 'p0' expecting END_METHOD_DIRECTIVE
Exception in thread "main" brut.androlib.AndrolibException: Could not smali file
: D:\BB10\DebugMethod\APKTools\apktool1.5.2\Transit\ smali\com\google\android\gms
\common\GooglePlayServicesUtil.smali
at brut.androlib.src.DexFileBuilder.addSmaliFile(DexF ileBuilder.java:45)
at brut.androlib.src.DexFileBuilder.addSmaliFile(DexF ileBuilder.java:33)
at brut.androlib.src.SmaliBuilder.buildFile(SmaliBuil der.java:66)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder. java:50)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder. java:37)
at brut.androlib.Androlib.buildSourcesSmali(Androlib. java:257)
at brut.androlib.Androlib.buildSources(Androlib.java: 214)
at brut.androlib.Androlib.build(Androlib.java:205)
at brut.androlib.Androlib.build(Androlib.java:176)
at brut.apktool.Main.cmdBuild(Main.java:228)
at brut.apktool.Main.main(Main.java:79)
Any ideas? Thanks10-26-13 06:30 PMLike 0 - Hello guys.
I followed the steps from APIv2 on an application similar to Lyft called 99Taxis but GPS refuses to work. Any ideas?
Also, what about Hangouts? It would be nice to have it working on my Z10.10-26-13 07:07 PMLike 0 -
I did read up on getting an API key and yeah it's quite involved.
Posted via CB1010-26-13 08:17 PMLike 0 - If you have spare time, please convert these apps. I also included the bpi apk that you requested.
https://www.dropbox.com/sh/2cigprfg38tskoz/a6Ncze1_7h
Thank you very muchnoelito4three likes this.10-27-13 12:01 AMLike 1 - http://i.imgur.com/BiLd8V4.jpg
It works. Holy molly. My banking app finally works! THANK YOU SO MUCH!
Posted via CB1010-27-13 01:18 AMLike 0 - This Is Awesome!! I've been waiting a looooong time for someone to figure this out. Now I am pretty good at this stuff, but this is way beyond my current skill set. I have an app I've been wanting to use on the BB for years now. It's called Marine Traffic. I have the APK here. https://www.dropbox.com/l/QhPMounJyGBWfqXxSBzo3a
Could someone please see if this fix can make the app work.
Thank You!10-27-13 02:12 AMLike 0 - Time for some apk's
ODB (ATM and Branch Location not working because of missing google play services)
BPI
Manila Metro
Marine Traffic
Have Fun!
(I tried ClickTheCity but it gave me some major errors. I will look at it a little bit later)10-27-13 05:09 AMLike 3 - It is possible to make maps work inside various Android apps. For Google Account dependent apps, see my other thread: http://forums.crackberry.com/bb10-an...t-apps-866259/
To fix such app you have to do:
How to find what Google Maps API version apk uses?
- Decompile app APK using apktool
- Check manifest - does it contain text "com.google.android.maps.v2.API_KEY"? If yes, application uses API v2 otherwise it uses API v1.
Patch app which uses API v1
- Decompile app APK using apktool
- Fix or remove Google Maps library dependency in manifest (this one is already known workaround) - the easiest way is to remove line with <uses-library android:name="com.google.android.maps" /> completely
- Download gapps from goo.im either for Android 2.3.3 (for OS 10.1) or Android 4.2.2 (for OS 10.2)
- Extract framework from /system/framework/com.google.android.maps.jar
- Decompile the maps jar using apktool as well
- Move decompiled maps smali code to your decompiled app
- Extract RSA key from the original APK (inside META-INF)
- Convert the key (openssl.exe pkcs7 -inform DER -in *.RSA -print_certs -out cert)
- Get MD5 fingerprint (openssl.exe x509 -noout -in cert -fingerprint -md5), remove colons, to lowercase (SHA1 might be necessary for API v2)
- Find method setAndroidSignature() (for Android 4.2.2 it's in file DataRequestDispatcher.smali, see post #28 for details)
- Current fingerprint is in parameter p1 and it's getting encoded into protobuf. Create new string (const-string v2) with the found fingerprint and use that when invoke-static instead.
- Compile it back, sign (jarsigner), convert, deploy, enjoy
See post #36 for detailed instructions thanks to ATV_Hightower.
How to deal with API v2
- Decompile your app using apktool.
- In file GooglePlayServicesUtil.smali find method isGooglePlayServicesAvailable() and replace the whole content of the method with just:
Code:.locals 1 .param p0, "context" # Landroid/content/Context; .prologue const/4 v0, 0x0 return v0
Code:.parameter "context"
- Change API v2 key to valid value (one you have registered, see https://developers.google.com/maps/d...ing_an_api_key) - otherwise tiles won't load.
- Pack your app, sign, convert, and deploy.
- Convert and deploy Google Play Services (aka GMS/GMSCore, latest apk is usually required!). com.google.android.gms must be install for maps to work!
WIP: I'm going to check if there's any easy way of reusing the authors fingerprint.
If you only embed framework code into app, it will work but won't load any tiles (app mBank, uses API v1)
Attachment 211881
With correct fingerprint you have it all working (app Pubtran, uses API v1)
Attachment 211882
Another example (app Meteor, also uses API v1)
Attachment 211929
Simple test application using API v2.
Attachment 213357
lyft also uses API v2.
Attachment 213873
I'll make a nice donation to anyone that can get Dunkin Donuts app at work.
Posted via CB1010-27-13 05:18 AMLike 0 -
-
-
- Time for some apk's
ODB (ATM and Branch Location not working because of missing google play services)
BPI
Manila Metro
Marine Traffic
Have Fun!
(I tried ClickTheCity but it gave me some major errors. I will look at it a little bit later)10-27-13 09:53 AMLike 0 - Omg your amazing! Can u please convert these apps:
Uber Cab
https://play.google.com/store/apps/d...id=com.ubercab
Greendot Mobile
https://play.google.com/store/apps/d...merce.greendot
Seamless
https://play.google.com/store/apps/d...b.android.view
Posted via CB1010-27-13 11:11 AMLike 0
- Forum
- BlackBerry 10 Phones & OS
- More for your BlackBerry 10 Phone!
How to fix any Android app dependent on Google Maps API and make maps working
Similar Threads
-
Best Leak to Run on T-Mobile Network?
By AfroZepher in forum BlackBerry 10 OSReplies: 16Last Post: 01-21-15, 07:29 AM -
Manually program BB10 device to set MDN and MSID?
By onlinespending in forum BlackBerry 10 OSReplies: 3Last Post: 10-20-13, 12:26 PM -
My Z10 updated now I can't hook up to wifi
By Tony Stashuk in forum BlackBerry Z10Replies: 5Last Post: 10-19-13, 11:44 PM -
Used sachesi and SR version still says 4181??
By sinnar in forum BlackBerry 10 OSReplies: 4Last Post: 10-19-13, 08:18 PM
LINK TO POST COPIED TO CLIPBOARD