yashsingh1/xdaforums huggingface dataset:
[G1 Android Development] suffeks:
niiiice, just installed. ok so alternate routes seem to work. getting un-named road and no arrows in the green bar. but better than nothing, its easy to see where you are going anyway by just looking at the map.

if you click the trip info list, it lists out all the turns and street names you are going to travel along. so i wonder if its easy to take that info from that list and plug it into the top bar?
[G1 Android Development] funkyarif:
Thanks Brut.all That was quick
[G1 Android Development] Brut.all:
It uses directions data, so it should work forever, I think. It is unbelievable that it just work :-)

Issues are nearly the same, as I mentioned above: "Unnamed road" in top and no "turn images". Alternative routes are working properly. Please report me any other issues.

And one more thing: I made some dirty hacks in dalvik bytecode to get it to work. This is really, really hard way, so I won't evolve that version. Instead I want to do it in more flexible way, but I need more time for this.

Any issues fixes will have to wait. I made this hard-hacked version, so you all may use it, when I will be preparing something better.
[G1 Android Development] enomther:
So are you saying you cracked this sucker again? :D That would be sweet!

Let me know.

~enom~
[G1 Android Development] hjlow:
thanks

wow congrats on doing it again :)

i posted the new apk at my blog for quicker download
[G1 Android Development] sallokatallo:
It works! Yay!

It works! Yay!

Didn't test the speech part yet though - especially considering the lack of a car and all...

But it works :) Tested working on my rooted HTC Dream (Rogers)
[G1 Android Development] seaweeduk:
still showing the same error message for me

I uninstalled using the terminal commands in the first post before installing this new apk. Did I do something wrong I'm not seeing a navigate option in maps, using navlauncher gives the navigation unavailable in your area error.
[G1 Android Development] sicksand:
so to install it just install or need to delete all the files and cache first?
[G1 Android Development] Kurius:
I had to completely remove 3.3.1 before the modded version would install
[G1 Android Development] dph1987:
Ok i had to uninstall the market maps (was fine); i then installed this version, (installed fine) & all the functions are there etc however...

no voice on mine (speech is installed); also GPS keeps locating me in the Czech republic? I am definately not there :lol: although it does seem to be giving me directions, however even when i type in two zip/postcodes it still thinks im in czech republic?

EDIT: Now i am getting the same error message as before even though it actually finds the directions first? It just wont display navigate it.
[G1 Android Development] Brut.all:
And here it is:

http://ul.to/2vblni/maps3.3.1-by-directions-no-root.apk

:-)

Ohh, and if you live in USA, you probably don't want to install hacked version of maps - you will get issues despite the fact that navi works properly in US (it will be still fed by directions data). You could install no-root version beside original maps and use appropriate depending on the needs.

I will fix it in future.
[G1 Android Development] 5m00v3r:
no errors here in germany :-)

wow i really love it!

thank you so much

my installation way:

adb remount
adb shell find /system /data -name \*google\*maps.apk\* -o -name Maps.apk -delete
adb uninstall com.google.android.apps.maps
adb install -r maps3.3.1-by-directions-root.apk
adb reboot

i´ve got to say great great great i will test it tomorrow for about 200km city routes than i think i should see all problems *if there are any*

good night @ all here it is 3 O-Clock in the morning

@Brut.all: You really need a twitter account ^^
[G1 Android Development] ghostofcain:
Working again in UK , on HTC Magic thanks a million
[G1 Android Development] Jonno12345:
Hmm, I always get a force close after clicking Navigate, usingn Nav Launcher, or a shortcut, just as it says "Getting driving directions". Removed all stuff from data\data and dalvik cache, all traces of any old maps.apk, even flashed a different rom, used root and non root versions.. I've tried installing by putting the APK in /system/app and using the Package Installer through AndroZip and so on, no differences... Halp?! :(
[G1 Android Development] LeftyNZ:
I get a FC as well. I am using the non-rooted version. ADB trace shows a verify error with the message:

Could not find method android.util.Log.d, referenced from method brut.Static.log

VFY: unable to resolve static method 3262: Landroid/util/Log;.d (Ljava/lang/String;Ljava/lang/String; )Z

Maybe a missing import?
[G1 Android Development] mikkle:
Seems to work in DK.

Not tested on the road yet (will be tomorrow) - only by holding the phone out the window :]

It speaks the directions.

Will follow up int the morning.

HTC Magic 32A CM 4.2.7.1

:O) Mikkle
[G1 Android Development] elvisdai:
Same problem here with the non-root Map. Got a FC when start navigation.
[G1 Android Development] Wysie:
Amazing! Will test out tonight. Thanks Brut.all :)!
[G1 Android Development] mobilepgk:
navigation works well

On latest cyanogenmod's latest cm ROM, No issues except listed ones already. Thanks BRUTall.

Btw, can some one help me know why apps are different for rooted and non-rooted phones? Thanks in advance.
[G1 Android Development] C.PYKE:
I'm getting the same - in Canada, rooted HTC Magic (32A) running Amon-RA's 1.6.x ROM.

Logcat:

V/UIState ( 632): Transitioning from: WAIT_FOR_LOCATION to: WAIT_FOR_DIRECTIONS newTop: 0
V/Router ( 632): Requesting route: [ mode:0 action:0 startBearing:-1.0 startSpeed:-1.0 waypoints: [ [addr:null point:45280067,-75922286 type:0 title:null token:null] [addr:Carling Ave, Ottawa, ON point:45378133,-75752178 type:0 title:null token:FVVqtAIdDh18-ylviNZTFwHOTDHhc4dUoIP4Vg] ] ]
V/LayerManager( 632): Updated layer: TrafficIncident
E/dalvikvm( 632): Could not find method android.util.Log.d, referenced from method brut.Static.log
W/dalvikvm( 632): VFY: unable to resolve static method 3262: Landroid/util/Log;.d (Ljava/lang/String;Ljava/lang/String;)Z
W/dalvikvm( 632): VFY: rejecting opcode 0x71 at 0x0006
W/dalvikvm( 632): VFY: rejected Lbrut/Static;.log (Ljava/lang/Object;)V
W/dalvikvm( 632): Verifier rejected class Lbrut/Static;
W/dalvikvm( 632): threadid=23: thread exiting with uncaught exception (group=0x4001da20)
E/AndroidRuntime( 632): Uncaught handler: thread DataRequestDispatcher exiting due to uncaught exception
E/AndroidRuntime( 632): java.lang.VerifyError: brut.Static
E/AndroidRuntime( 632):	at q.j.<init>(Unknown Source)
E/AndroidRuntime( 632):	at q.q.a(Unknown Source)
E/AndroidRuntime( 632):	at q.q.<init>(Unknown Source)
E/AndroidRuntime( 632):	at q.A.a(Unknown Source)
E/AndroidRuntime( 632):	at q.A.s(Unknown Source)
E/AndroidRuntime( 632):	at q.A.a(Unknown Source)
E/AndroidRuntime( 632):	at m.m.a(Unknown Source)
E/AndroidRuntime( 632):	at m.m.a(Unknown Source)
E/AndroidRuntime( 632):	at m.k.run(Unknown Source)
E/AndroidRuntime( 632):	at java.lang.Thread.run(Thread.java:1060)
[G1 Android Development] Rhepius:
Thanks for the hard work. Unfortunately it gives me a FC when I start navigation here in The Netherlands.
[G1 Android Development] lalit79:
it used to give me FC a lot.....but amazingly it stopped once i rebooted the phone....it works wondefully now.

Thanks Brut for showing the way. Hope google doesn't screw this up
[G1 Android Development] ninjai:
prelim test works for me in Japan.

Will give it a real test once I leave work

Thanks for all the hard work Brut.all and supporters!

EDIT: forgot to mention I am on a G1 wit cm 4.2.7.1
[G1 Android Development] jezzaaaa:
Even easier for me:

adb install -r maps3.3.1-by-directions-root.apk
adb reboot

I had the official Maps installed from the market, and didn't need to uninstall it. Now I have nav!

Thanks yet again brut.all.

So how the heck did you do this anyway? I presume there's no proxy running on my phone.
[G1 Android Development] rickytenzer:
He explained it a few pages back. I think he's essentially feeding the directions information into the navigation. Directions info works anywhere in the world.
[G1 Android Development] squbel:
Works in New Zealand again!

Brute.all did it again! Amazing!

PS:

Brute.all: Have you sent your CV to Google yet? :D
[G1 Android Development] jezzaaaa:
Yes, I understand the concept, but I wanted to know what changes brut made to the application to make it happen that way. eg, did he change some strings to the request was sent out differently? and adjust the strings used to parse the responses? It was thought that this manipulation was going to have to be done within a web proxy running on the phone, but brut has done something different to fudge the requests/responses from nav data to direction data.
[G1 Android Development] Rhepius:
I rebooted my phone but it still doesn't work.
[G1 Android Development] Settembrini:
Force Closes. no root version. G1 Android 1.6 in Germany. Reboot did not help.

S.
[G1 Android Development] froy16:
It doesn't work for me in FRANCE on G2 no root.

I restart the G2 but same case:

Force closes apps Google MAP
[G1 Android Development] nanophage:
same problem in france with no-root apk
[G1 Android Development] jorobochi:
For me work again :)

10x brut.all good work
[G1 Android Development] furax54:
Works well for me. No need to use Nav Launcher anymore.

On CM 4.2.7.1 G2/Magic
[G1 Android Development] idkidk:
OooooooK Man!

Thanks for a incredible work Brut.all! :D

I follow this step for installing:

Remove "old" app with appmanager - ok

Installing "new" app with Astro - ok

Done.

Everythin (for now) work.

THANKS to ALL XdA!!!!!!!!!!!

Idk
[G1 Android Development] froy16:
Please guy can you write where (country) you test Google navigation
[G1 Android Development] fkna99:
Test result.

Force Closes. maps3.3.1-by-directions-root.apk in Japan.

-------------

Phone: Docomo HT-03A (HTC Magic with Google (Sapphire 32B))

Rom: Docomo-official-1.6 *rooted

Recovery:

SPL:

Radio:
[G1 Android Development] nurre:
works perfectly again in norway (with rooted phone)
[G1 Android Development] SkinnerY2K:
Hi I'm getting FC in the UK. HTC Magic 1.6 rooted

Uninstalled via adb method in above post and installed using Linda manager.

any help appreciated, cheers
[G1 Android Development] Brut.all:
Ok, I've fixed these FCs:

http://ul.to/8xqruf/maps3.3.1-by-directions-root-2.apk

http://ul.to/ddfg8j/maps3.3.1-by-directions-no-root-2.apk

Earlier I had been testing it on emulator with Android2.0 and it seems Dalvik2.0 is somewhat smarter - that buggish method isn't even used, so throwing exception is not necessary, warning is enough.

But I don't know, why not every person with 1.6 on a board is affected :-/
[G1 Android Development] andymck:
Working perfectly again here. G1, T-mobile UK

Superb work Brut.all
[G1 Android Development] marek_p:
In Poland - no root G1 1.6 "The application Maps has stopped unexpectly"

Marek_p
[G1 Android Development] BiggerSpain:
THANKS BRUT.ALL!! . You are really generous with your time. If you ever come to Spain let me know, I will buy you some drinks!!!! hahahah

Regards from Spain
[G1 Android Development] froy16:
Fine it's work perfectly in france on SFR with a G2 root
[G1 Android Development] Brut.all:
@jezzaaaa

Using my proxy I have separated minimal changes in requests and responses, which are needed to get it to work. And then I dug through smali code to find a way to inject these changes directly into code. And that's it ;-)

@marek_p

Did you use maps from my last post?

And thanks everyone for good words, I really appreciate them :-)
[G1 Android Development] marek_p:
Work exellent in Poland! No root G1

Wery good work Brut.All!!!!

Marek_p
[G1 Android Development] SkinnerY2K:
Just got the new version and it's now working. Anyone know how I can get different voices as the one on here is aweful? - other than that I LOVE IT

Great work Brut
[G1 Android Development] paranoidpenguin:
Hey Brut.All thank you for keeping up the work.

Can you or someone else please upload the app somwhere else, because it cancelles download all the time on my phone.
[G1 Android Development] JC-LGMS:
thanks

it works in france with the new version to avoid FC
[G1 Android Development] anthonws:
@Brut.all and everyone involved

Thank you for your hard hard work and patience! :D

I must say that things, in general, went quite well. The community awaited respectfully, there were very very fews "complaints" or "lame requests".

It's what XDA is all about. Great knowhow, great support and a unique lifetime experience.

Thank you for the earlier Xma's gift :)

Best regards,

Anthon.
[G1 Android Development] Rapax:
Working nicely again in Switzerland (Bern). Thanks Brut.all, you're brilliant.

Do you think there's any solution to the 'unnamed road' thing? It's not much of a problem, but it's a blemish on an otherwise beautiful solution.
[G1 Android Development] nanophage:
works perfectly on 1.6 no root in France (sfr)

thank you brute.all you're a genius :D
[G1 Android Development] Brut.all:
It should be possible to fix it. As suffeks said:

But:

So be patient, please :-)
[G1 Android Development] robbiekhan:
Thanks very much! I can now reinstall Nav Launcher :p
[G1 Android Development] hjlow:
mmm how is that possible?
[G1 Android Development] canadiancow:
I'd like to know that too...

And as for those asking to test...I imagine that as soon as a solution is ready, everyone will get it, so let's try to keep the clutter out of here so that it's easier to discuss the problem and solution.
[G1 Android Development] vigan8:
its possible in some countries. i guess India is one of them, this is because Maps knows the roads in that country. T
[G1 Android Development] raven2000:
Screen shot proof?

This guy is probably talking about Google Maps standard turn by turn direction rather then the actual Google Navigation.
[G1 Android Development] raven2000:
According to Google it is only available in US at the moment.
[G1 Android Development] finalmoksha:
You could be right.. :) ..
[G1 Android Development] Brut.all:
It is only a prototype for testing, that it is possible at all. And for understanding of communication with navi servers.

I managed this by setting a reverse proxy on my PC and testing on an emulator. So, Android:

- Standard config, we only need to edit /etc/system/hosts, so www.google.com is our PC IP. Yes, unfortunately navi's data, in contrast to directions, is requested from main Google domain, so this way we will redirect all communications with Google servers :-/

PC:

- Apache, Python, WSGI

- my code in Python

- only requests for /glm/mmap/a are directed to my code, rest of them are proxied by mod_proxy to Google servers

I will tidy up code a bit and upload it here, likely today, so anyone could set it up.

Now we must somehow move that process from PC to Android devices. I think the best solution is:

1. Decompile Maps.apk and change URL to localhost on some port. I did it already with smali/baksmali, but get some error when installing: [INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION]. I don't have much experience with building android apps, I think it should be easy to do.

2. Port code to C or Java. Fortunately Protocol Buffers have both Java and C support. We also need some simple HTTP server and proxy.

2a). Unix daemon: need root perms.

2b). Android app.

I think we don't need high performance, so I favour Java app solution.
[G1 Android Development] og01:
Impressed!

Are you saying that you got this working!? or are you still trying to proove it? Im looking forward to seeing the code.

Was it just a matter of replacing "DriveAbout" with "GMM" and vice versa with requests/responces? or was there a bit more to it than that? (i guess i'll find out when i see the code)

either way - I cant wait to have this working.

Sorry i cant help much with the apks, I hope someone with experice looks to this soon - I think that recompiling the maps with localhost requests would be much preferential to a hosts entry.

Once I have your Python code I could re-write it in C if you want, however I think a nicer solution would be Java for easier support/installation across phones.

Anyway Kudos to you! :eek:
[G1 Android Development] lalalala1:
so in order to get this working, were going to use the google application (modified) and somehow get our own server to give the application instructions instead of using google servers?!

you lot are amazing!
[G1 Android Development] og01:
Yeah if someone is able to decompile/recompile with requests to localhost instead of google.com then yeah that would be prefrable. However if we cannot succesfull manage this then a hosts entry would be an option, however we would have to proxy all non maps requests back to google which would not be optimal.

(I really cant wait to see the code!)

I think we need a Java developer onboard to port the example into a workable android application.

do we think there would be issues with keeping an android server running - given androids application lifecycle?

would we be better off running a C written daemon?
[G1 Android Development] canadiancow:
I'm fairly experienced with developing Android apps, and the lifecycle for a Serivce is a lot different than an Activity. It only dies if the system absolutely needs the resources. I've had one run for days and it's never been killed by the system.
[G1 Android Development] philicibine:
So how is progress going on this???

no posts for some time.... has it stopped????

I want nav workin for me in UK...

very happy to test run anything.

Can even provide a server if someone needs??
[G1 Android Development] canadiancow:
Brut.all hasn't posted in a couple days so I'm not sure where he's at. A server won't be necessary, because the idea is to run a local proxy server (on the phone) that will just modify certain requests to Google.
[G1 Android Development] antonelli182:
Hey guys

I've already tried to use proxy on my Android using this app (http://graha.ms/androidproxy/) but I wasn't able to make it work..

Don't know if this is the exactly type of proxy that you were talking about..
[G1 Android Development] shid007:
Brut.all had posted yesterday... keep in mind that some of us have a life to live :)))
[G1 Android Development] Brut.all:
Hah, i have rewritten everything for more flexible data decoding and OOP and you know what? I have accidentally found a flag that forbids using navigation outside USA ;-) One byte and sooo difference :-)

It means that:

- We have now full navi data, so a lot of issues, like unnamed roads, have gone out.

- It is much more stable, because of less there-should-be-a-3F4B12-and-not-E1AB56 errors.

- Porting will be piece of cake. 90% of my code is needless in production environment. I will leave it for debugging purposes.

Soo... here it is :-) Please refer to INSTALL.txt for instructions.

As you can see, it is working from home app shortcut only. There must be some flag in directions responses, that tells GM to not put a navigate button, even if it would work properly.

TODO:

- fix that no navigation button issue

- recompile Maps.apk

- port proxy to Android App

It shouldn't be much work to do :-)
[G1 Android Development] philicibine:
AMAZING!!!

Testing it now!

will report back!
[G1 Android Development] Daneshm90:
Python.....ugh, ne chance of a batch file or some quick script ? W/e ill wait for some results :)
[G1 Android Development] philicibine:
not really getting how to install this!:confused:
[G1 Android Development] Brut.all:
That maps recompiling is also a poor solution. Someday we'll get official Maps with Navi for G1 and then recompiling will be single rooting/hacking step to get it working.

But I don't have idea, how we could do it otherwise.

Thanks to all for a good words :-)
[G1 Android Development] rac2030:
Thx brut.all, you have my full respect and kudos to you.

Do you have a paypal account?

I think there would be more people than just me that would like to donate something to you to say thx for your work ;-)

btw. is your name really that common? I made a short lookup and got results from all over europe with different people with the same name...
[G1 Android Development] dph1987:
Newest release (root version 2) works fine for me; G1 in the UK on tmobile, cyanogens latest. Voice works and GPS works too but as still got no arrows and unnamed road errors.

Brut.all you are a legend :) As above, i would donate for your work.
[G1 Android Development] BiggerSpain:
I agree with that. I would make a donation to Brut.all, he deserves it!!! Well that´s my opinion.

Regards from Spain
[G1 Android Development] ydring:
Works with 2.0 on Milestone

Just like to add that "maps3.3.1-by-directions-no-root-2" works perfectly on my (unrooted) Milestone in Sweden. You dont even need ADB, just throw it in using eoeAppInstaller. No need to delete the preinstalled Maps.

@Brut.all: Its people like you that makes Android such an enjoyable adventure! I take my hat off!
[G1 Android Development] ydring:
Only thing, as said before, is missing street names.

Sort of have the feeling you'll solve this aswell at some point...
[G1 Android Development] sputnik99:
Can anybody tell me why I get a pparsing error, when I try to install the root verion 2?
[G1 Android Development] canadiancow:
You're clearly missing the point of Nav Launcher. Most of the people using Nav Launcher are in the USA using the unmodified version of Google Maps. It's a tool to help you launch Navigation more easily.

I believe CM 4.2.7.1 (and a few earlier versions) use Dalvik 2.0.
[G1 Android Development] 5m00v3r:
here my short review (with the -2 version)

i drove only about 50 km today my plans had changed :-)

first things first yes no direction symbol and no street-name in the green topbox but you get the way to your next turn

alternate routes and route correction (if you turn an other way or miss the corner) works fine

voice is strange most times it cames right after the corner "WITH THE RIGHT STREET NAMES!" but a lot times there is nothing (i don't need it because i´m always playing loud music in my car :-) )

navigation start works fine on all ways (navlauncher, symbol & direct from gmaps)

the only thing i miss is direction symbol in the green topbox and maybe a night mode :-)

greetings from Germany
[G1 Android Development] Brut.all:
I have added it in signature. Thanks in advance, guys :-)

You mean "brut.all" or "Ryszard Wiśniewski"?
[G1 Android Development] nk02:
i love you! perfect with 1.6!
[G1 Android Development] rac2030:
I mean as surname Ryszard and as Lastname Wiśniewski

I did throw it at google and a lot of results are from pages with most common (top 20 or something) polish names.. I was just wondering if it is a eastern europe name like "Müller" or "Meier" is in Switzerland (everybody knows a familly with this names in Switzerland ;-)).

Btw. for the one that doesn't know PLN... 1 U.S. Dollar = 2.73640 Polish Zlotych

I donated you 14 PLN, so this is around 5$ ($5.12 USD to be exact)
[G1 Android Development] pardus:
Can't download from www.uploaded.to, asks to register and when I do won't allow downloads, is there a mirror somewhere please?
[G1 Android Development] Brut.all:
It is quite popular in Poland, but not every person is named so ;-) We have "our" Jan Kowalski - it is equivalent of John Smith :-)

Beside I don't have MySpace, Facebook, LinkedIn, etc. accounts, so it is hard to find me outside the .pl domain.

http://www.google.com/profiles/Brut.alll

(I don't know, why I'm in India for last 2 days ;-) )

Yeah, I noticed that and changed currency to USD. It is my first contact with PayPal and I didn't know that donators will be seeing PLN in interface.

Thanks again :-) Not only to you, but also to other donators :-)
[G1 Android Development] rac2030:
On paypal you can have different accounts (not paypal, just currency accounts) in different currencies.

I made one in USD, one in EUR and one in CHF (my own currency).

On this way, donator's can donate in the currency they want and I can pay my bills with it depending on where I ordered from (without converting two times)...
[G1 Android Development] Terrandroid:
I did a clean install, removed old one cleared dalvick-cache.

Still crashes while trying to load its route