-
Offline maps on Android in China
Firstly, a million thanks to Slabo for making me aware of Mobile Atlas Creator. Preloading offline maps into my phone was something i had been wishing for for a long time but had no idea was possible.
There are many great apps for android that allow loading of offline maps (maverick and oruxmaps are two good ones) but in China they all suffer from the dreaded "offset of death", which renders them useless for city navigation. Now though i think i have finally found something that works.
Big Planet Tracks actually has a feature where you can offset the map any amount you want. Apparently this was included specifically for use in china. You shift the map with two sliders which are not very accurate but you can get close enough to your true position. It can also load and record tracks (brilliant) and do a few other things, no turn-by-turn navigation (don't care).
There is a write-up here to explain how to save offline maps using mobac.
So far this is the only solution i know of to use offline maps on android in china without the offset of death. If you guys know any other way to do it, post it here and this thread could become a useful resource. The internet is currently quite lacking in info on this topic.
[EDIT 08-26-2010] Though this app has the most convenient way to correct the offset, i don't really recommend it as it was very unreliable in my experience. There is a way to correct the offset in Oruxmaps too, and although it is a bit tedious, this is the one i would recommend. Details are on page 2 of this thread.
-
Re: Offline maps on Android in China
Thanks for that Felix, looks like an Android device might be next on the gadget list when I get back from America. As much as I despise WinMobile, it's been the best platform for GPS. Finally looks like Android is well on its way to surpassing Microsloth.
Cheers!
ChinaV
-
Re: Offline maps on Android in China
It would seem that way indeed! It's still early days for android but there are already some very useful and very complete pieces of software available for it. Big Planet Tracks may not be my first choice of GPS software if i lived somewhere else, but here in china it's the best option. And it's free and ad-free. Using an HTC Hero and there is no problem with lag or anything. The app comes with a tracking feature, i've tested it a few times in the last two days and it seems to work perfectly. Once the track is saved you can export it as a gpx file and load it into Google earth, the accuracy is quite impressive. It also gives you stats like av. speed, max speed, atlitude etc... I managed to record 97 kph on my sidecar!
Incidentally, after much fidling around with the map offset feature in BPT, the offset i'm using is
EAST: 487m
SOUTH: -218m
I think this might vary in different regions of china though.
-
Re: Offline maps on Android in China
Friggin A! I'm using the Motorola Droid X now and and can say I much prefer it over the IPhone which I happened to have had way to many problems with.
No feeling of loss on the apps (plenty of android app and less "censored" than apple), a battery you can actually replace, happy to not deal with ITunes and much more customizable. Also much better navigation (IMHO). More advantages over the IPhone (any of them) than you can shake a stick at.
Been a Moto user for many years and I'm glad to see they're starting to compete in the top ranks again. Now just waiting for Otterbox case to come out and I'll be ready to rock and roll. Get some offline maps of China on there (did I mention a micro SD card you can swap?) and it could be one of the best all round mobile devices available... at least until winter. :icon10:
CC
-
Re: Offline maps on Android in China
The OtterBox issue has been a real deal killer for me on several non-iPhone models. Seems that although Android and WinMo have some nice hardware, they just don't have the volume for OtterBox to tool up and commit to rugged waterproof cases. I'm still using the same OtterBox 1900 and now on my 6th smartphone. Unfortunately OtterBox has discontinued the 1900, so let's hope they make something similar for the upcoming Android phones. It needs to be completely bombproof and include some kind of rugged mounting system like the RAM mount for the 1900.
Cheers
ChinaV
-
Re: Offline maps on Android in China
Otterbox is making cases for the Droids, and a bunch of other phones. The Droid X has been out for less than one month at this point so it's likely a matter of weeks. Certainly the Apple products get a lot of aftermarket support, but it's only a matter of time before others catch up... it's probably not far. The Droid OS is customizable in ways apple would never give you. I also like having much more control and info over what the apps and hardware resources are doing as well as how they are being used.
There are a couple features of the IPhone interface I prefer, but am more than happy to give that up to make better use of the same resources. They're all pretty crazy little devices. Still waitin' on the case though!
cc
-
Re: Offline maps on Android in China
I've got only an iPhone (an ancient 2g version at that), and it did not take well to some heavy downpours during my ride to Beijing and back. ryanjpyle and I both use iPhones in bluetooth linkups with our Garmins and Cardo headsets, so it's a nice piece of the mix. So I've taken to sealing it in a ziploc bag in my jacket pocket during rides. It's definitely a very hydrophobic phone.
There is an iPhone app that I think I mentioned a couple of months ago, from a developer in San Francisco, called GreatestRoad. I've not used it more than once or twice.
I recall it allowed you to map out routes (it calls these "stretches") in googlemaps (maybe only on the iPhone but maybe also in a browser) and also to share them on the site, with ratings, etc. Stretches can have waypoints and descriptions of things that can be found there (nice burgers at the Burger Shack in Philo). Once you've picked a stretch you like, you click Start Ride and it takes you into iPhone's Maps app, and gets you to the start of the stretch from your current position. Worth a look for iPhone users.
Anyone else tried this?
I may see if I can map a stretch or two here in China...
-
Re: Offline maps on Android in China
Thanks Felix, I did not know how to get round that. The offset thing did not really bother me, cause i did not use gps in cities. I always seem to download less detail for cities. If you read Hanzi, ditu.google.com is better source for China maps. If only it were in Pinyin...
-
Re: Offline maps on Android in China
Thanks for the useful tools....
I successfully downloaded MOBAC and proceeded with the following mapping steps:
1. Click the "Add selection" button after selecting the multiple "Zoom Levels" of the map.
2. Confirm the "Map Source" to be "Google Maps" (default value, you can choose another types).
3. Confirm the "Format" of "Atlas settings" to be "BigPlanet SQLite" (default value).
But when I try to download the map after clicking the "Create atlas" button I get the following error: Unable to find SQLite libraries. These are required for BigPlanet ouput format.
Was there a step that I missed? Any support is appreciated.
-
Re: Offline maps on Android in China
The daily topic apple versus the rest of other phones... Yes, android will be on more phones by 2012 then iPhone iOS which is a simple fact because there are many manufactors for android but only on for iphone. And closed versus open system? Yes it's nice to have an open source system, so Linux might be great for you instead of Windows, but for many it's too complicated, same goes for Mac versus PC. Don't let me get into this as the topic was about GPS offline.
I am using my iPhone with "MotionX GPS" and it's great for all you ever wanted, you can record your tracks, one can store offline maps (open street maps & open terrain maps) or if you have a GPRS/3G package you have google maps / satellite view as well. Compass, waypoints, altitude and so on.
Check it on the app store, it has several other great features which I don't have to repeat here. I just got an otter box, but now looking into the best way to fix it on my Suzuki DRZ.
Stefan
-
Re: Offline maps on Android in China
Hi motokai, sorry for the late reply! Here's what you're missing for the sqlite maps:
Go to this page and download the appropriate zip file for your system (eg: get sqlite_jni win x86 (32bit) v1.zip for 32bit Windows operating system)
Then open the zip file and grab the sqlite_jni.dll out of it and drop it straight into the mobac folder. That should do it!
There are plenty more details in the README file in the mobac folder.
Steve, thanks for updating this thread for our iphone cousins. Sounds like a nice alternative, although if i understand correctly you can't use googlemaps offline. Openstreetmaps seems pretty good abroad, but in china is way too incomplete and so practically useless. This is a shame as it's the only map of china that doesn't have the offset of death.
-
Re: Offline maps on Android in China
Hello Felix,
actually you are not allowed to use google maps /satellite offline (as goggle user agreement) therefore the official apps can't support this. Actually for everyone who live in China its also no problem to have a nice data package for it and use google maps/satellite online. 3G China Unicom offers from 66RMB/300MB/Month to 886/3GB/Month all kind packages.
We also now a combination of google maps & google earth to keep track of our spots, motorcycle repair shops, gasoline stations and restaurants. On the go, you just open google earth and go to there, mostly we already now the way, its just about the main direction.
-
Re: Offline maps on Android in China
UPDATE:
I've been playing around with Big Planet Tracks for a while now and must say i'm not particularly happy with it. I haven't managed to load a track in yet, i convert my kml files to gpx and put them in the folder. In the app i then import the track, it says 'imported succesfully' but i can't load it into the map. Not sure what's going wrong. The second thing is tracking, the app just keeps crashing if i try to track for any useful length of time, like 1 hour or more. When it crashes it doesn't save the track so you lose everything. The third thing is that even though there is this very handy feature to offset the map, it seems to sometimes forget about the offset and randomly displace the map to somewhere else. This could all just be my phone (HTC Hero), i don't know.
It seems like Oruxmaps is a better app, much more complete, but a little more complicated to use. It crashed once while tracking too, but at least it saves the track as it goes so you don't lose everything, and then you can just resume the track. It can export as kml or gpx, and can also import both those formats. Also, using the volume buttons to zoom in and out is just genius!!
Now about the offset, it appears that there is a solution but it is quite tedious and so i haven't done it yet. The answer is on this page. What you have to do is edit the otrk2.xml file to change the coordinate values included in it. For this you need to know the offset values. (if anyone already knows what these are, i would love to hear from you!) The way i use mobac, my atlas for oruxmaps has 3 different maps, each with many layers. That means that i will need to go and change the 4 coordinates for each layer of each map, so i just haven't been bothered yet.
-
Re: Offline maps on Android in China
I read about fixing the offset, i'll have a look on my laptop when i get home. I remember I read that sometime ...
Question: which android are you running? I have 1.6 upgraded by myself 5 or 6months ago.
-
Re: Offline maps on Android in China
I'm on android 1.6 too.
I've read that 2.1 is available now for the Hero, but i don't know how to upgrade. My phone doesn't detect any upgrade and it's not available from the HTC website.
-
Re: Offline maps on Android in China
Hero Sprint Update Site with download. Not sure what region your phone is though.
http://www.htc.com/us/support/hero-sprint/downloads/
CC
-
Re: Offline maps on Android in China
Cheers for that, but i think it's a different phone! Not sure why they have the same name. I'll head down to the store i bought it from and see what they say.
-
Re: Offline maps on Android in China
HTC A62XX / HTC Hero / T-Mobile G2 Touch / Dopod Magic came out for Europe and GSM areas first, the US (CDMA) version came ~3 months later. Hero Sprint or Droid Eris is the US version, quiet different from what I have. I bought my phone in China, phone same as European versionm, meant for Indian supplier Airtel, and they never had an update. HTC does not have an office in China, they are manufactur under the name of Dopod. There is a Dopod version of the Hero. I updated by myself using a custom build from http://forum.xda-developers.com/ was not easy, took me a few tries over a couple of days. Still on 1.6, switching soon. Get started rooting >> GSM version or CDMA version
Upgrading like this is called rooting your phone, i did that promising myself that I would install something like wavesecure, never did that. WaveSecure helps you:
Quote:
Locate your lost phone and plot the locations on a map
Track SIM cards inserted and phone calls made to help get your lost phone back
I hope i get to that before i lose the phone. Had it for 1 year now, but it's an accident waiting to happen, one way or the other.
-
Re: Offline maps on Android in China
Thanks Felix for the response to my question on creating the Atlas with MOBAC. It's working now and enjoying it with Big Planet Tracks on my HTC Desire (Android).
I was able to adjust the offset as you mentioned, but I found that when after opening a saved track the offset change I made isn't recognized in the track. It's not a enormous problem, since it's off by a small bit, but this means the track will run parallel to the road rather than ON THE ROAD. A bit annoying, but I'll continue to play around and see.
Also, I haven't yet exceeded 1hour of tracking using the HTC Desire so I dont' know if the problem related to "lost track after 1 hour" will occur or not. I'll let you know.
And if you guys haven't heard yet HTC will be launching in China late OCT (actual date TBD). And yes, Dopod has been their "strategic partner" in China, but look to the HTC brand to move front and center - this should mean lots of China support behind their planned $40M USD media spend.
http://www.htc.com/www/press.aspx?id=136406&lang=1033
-
Re: Offline maps on Android in China
Thank you for the replies, this is interesting news. I wonder if there will be any support from HTC for those of us who bought imported phones before the official launch in china.
Motokai, i have given up on big planet tracks, it seems way too buggy and unreliable.
Slabo, thanks for pointing me in the right direction again. Rooting this phone looks extraordinarily complicated and i'm not sure i want to get into it right now after spending so long figuring out these offline maps!
Which bring me neatly onto my next point: I am finally using oruxmaps without the china map offset!
I used the method i described in post #13 and it worked perfectly. I calculated the offset to be about 452m east and 192m south. When editing the otrk2.xml file this is how you should change the coordinates:
to every longitude coordinate take away -0.004520
to every latitude coordinate add +0.001920
I save my maps in the oruxmaps sqlite format, this keeps all the layers in one file. This is what the otrk2.xml file looks like. You can see the coordinates bunched up together for each layer in the map. You need to change the numbers in every single one. It's a bit tedious but not complicated:
<?xml version="1.0" encoding="UTF-8"?>
<OruxTracker xmlns="http://oruxtracker.com/app/res/calibration"
versionCode="3.0">
<MapCalibration layers="true" layerLevel="0">
<MapName><![CDATA[Biking region]]></MapName>
<OruxTracker xmlns="http://oruxtracker.com/app/res/calibration"
versionCode="2.1">
<MapCalibration layers="false" layerLevel="10">
<MapName><![CDATA[Layer name 10]]></MapName>
<MapChunks xMax="5" yMax="4" datum="WGS84" projection="Mercator" img_height="512" img_width="512" file_name="Layer name 10" />
<MapDimensions height="2048" width="2560" />
<MapBounds minLat="29.22889003019423" maxLat="31.653381399664" minLon="118.4765625" maxLon="121.9921875" />
<CalibrationPoints>
<CalibrationPoint corner="TL" lon="118.472043" lat="31.655301" />
<CalibrationPoint corner="BR" lon="121.987668" lat="29.230810" />
<CalibrationPoint corner="TR" lon="121.987668" lat="31.655301" />
<CalibrationPoint corner="BL" lon="118.472043" lat="29.230810" />
</CalibrationPoints>
</MapCalibration>
</OruxTracker>
<OruxTracker xmlns="http://oruxtracker.com/app/res/calibration"
versionCode="2.1">
<MapCalibration layers="false" layerLevel="11">
<MapName><![CDATA[Layer name 11]]></MapName>
<MapChunks xMax="10" yMax="8" datum="WGS84" projection="Mercator" img_height="512" img_width="512" file_name="Layer name 11" />
<MapDimensions height="3840" width="5120" />
<MapBounds minLat="29.22889003019423" maxLat="31.503629305773032" minLon="118.4765625" maxLon="121.9921875" />
<CalibrationPoints>
<CalibrationPoint corner="TL" lon="118.472043" lat="31.505549" />
<CalibrationPoint corner="BR" lon="121.987668" lat="29.230810" />
<CalibrationPoint corner="TR" lon="121.987668" lat="31.505549" />
<CalibrationPoint corner="BL" lon="118.472043" lat="29.230810" />
</CalibrationPoints>
</MapCalibration>
</OruxTracker>
<OruxTracker xmlns="http://oruxtracker.com/app/res/calibration"
versionCode="2.1">
<MapCalibration layers="false" layerLevel="12">
<MapName><![CDATA[Layer name 12]]></MapName>
<MapChunks xMax="20" yMax="14" datum="WGS84" projection="Mercator" img_height="512" img_width="512" file_name="Layer name 12" />
<MapDimensions height="7168" width="10240" />
<MapBounds minLat="29.3055613255277" maxLat="31.42866311735861" minLon="118.4765625" maxLon="121.9921875" />
<CalibrationPoints>
<CalibrationPoint corner="TL" lon="118.472043" lat="31.430583" />
<CalibrationPoint corner="BR" lon="121.987668" lat="29.307481" />
<CalibrationPoint corner="TR" lon="121.987668" lat="31.430583" />
<CalibrationPoint corner="BL" lon="118.472043" lat="29.307481" />
</CalibrationPoints>
</MapCalibration>
</OruxTracker>
<OruxTracker xmlns="http://oruxtracker.com/app/res/calibration"
versionCode="2.1">
<MapCalibration layers="false" layerLevel="13">
<MapName><![CDATA[Layer name 13]]></MapName>
<MapChunks xMax="40" yMax="28" datum="WGS84" projection="Mercator" img_height="512" img_width="512" file_name="Layer name 13" />
<MapDimensions height="14336" width="20224" />
<MapBounds minLat="29.3055613255277" maxLat="31.42866311735861" minLon="118.5205078125" maxLon="121.9921875" />
<CalibrationPoints>
<CalibrationPoint corner="TL" lon="118.515988" lat="31.430583" />
<CalibrationPoint corner="BR" lon="121.987668" lat="29.307481" />
<CalibrationPoint corner="TR" lon="121.987668" lat="31.430583" />
<CalibrationPoint corner="BL" lon="118.515988" lat="29.307481" />
</CalibrationPoints>
</MapCalibration>
</OruxTracker>
<OruxTracker xmlns="http://oruxtracker.com/app/res/calibration"
versionCode="2.1">
<MapCalibration layers="false" layerLevel="14">
<MapName><![CDATA[Layer name 14]]></MapName>
<MapChunks xMax="79" yMax="56" datum="WGS84" projection="Mercator" img_height="512" img_width="512" file_name="Layer name 14" />
<MapDimensions height="28672" width="40192" />
<MapBounds minLat="29.3055613255277" maxLat="31.42866311735861" minLon="118.5205078125" maxLon="121.97021484375" />
<CalibrationPoints>
<CalibrationPoint corner="TL" lon="118.515988" lat="31.430583" />
<CalibrationPoint corner="BR" lon="121.965695" lat="29.307481" />
<CalibrationPoint corner="TR" lon="121.965695" lat="31.430583" />
<CalibrationPoint corner="BL" lon="118.515988" lat="29.307481" />
</CalibrationPoints>
</MapCalibration>
</OruxTracker>
<OruxTracker xmlns="http://oruxtracker.com/app/res/calibration"
versionCode="2.1">
<MapCalibration layers="false" layerLevel="15">
<MapName><![CDATA[Layer name 15]]></MapName>
<MapChunks xMax="156" yMax="112" datum="WGS84" projection="Mercator" img_height="512" img_width="512" file_name="Layer name 15" />
<MapDimensions height="57088" width="79872" />
<MapBounds minLat="29.31514119318728" maxLat="31.42866311735861" minLon="118.531494140625" maxLon="121.959228515625" />
<CalibrationPoints>
<CalibrationPoint corner="TL" lon="118.526974" lat="31.430583" />
<CalibrationPoint corner="BR" lon="121.954709" lat="29.317061" />
<CalibrationPoint corner="TR" lon="121.954709" lat="31.430583" />
<CalibrationPoint corner="BL" lon="118.526974" lat="29.317061" />
</CalibrationPoints>
</MapCalibration>
</OruxTracker>
</MapCalibration>
</OruxTracker>
I've tested it on a map of shanghai up to zoom level 18 and it's pretty spot on, give or take a couple of meters.
Enjoy!
-
Re: Offline maps on Android in China
You have me curious now....
- I installed OruxMaps onto my HTC.
- I'm using MobileAtlasCreator1.7 (which I previously used to create offline maps for Big Planet on the Android)
Q: Now how do I create offline maps using MOBAC for the OruxMaps App? Do I have to create new maps? And if so, do I need to change the settings under Format for Atlas Settings? (I don't see an Atlas Setting option for OruxMaps here, just BigPlanet, TrekBuddy and others)
Seems I missed the step-by-step instructions somewhere!! :confused1:
Thanks.
-
Re: Offline maps on Android in China
Ah yes, you need mobac 1.8 which can output for oruxmaps! Get it here.
There are two output options, normal (shit loads of tiles) or sqlite (which puts everything in one big file). I'm not sure which one is technically better, but the sqlite option makes it a bit simpler to change the coordinates, since they are all in one xml file.
-
Re: Offline maps on Android in China
If you recall the problem I had when creating maps in MOBAC for BigPlanet.....Well I'm having the same problem now when creating Oruxmaps:
I successfully downloaded MOBAC 1.8 and proceeded with the following mapping steps:
1. Click the "Add selection" button after selecting the multiple "Zoom Levels" of the map.
2. Confirm the "Map Source" to be "Google Maps" (default value, you can choose another types).
3. Confirm the "Format" of "Atlas settings" to be "OruxMaps SQLite".
But when I try to download the map after clicking the "Create atlas" button I get the following error: Unable to find SQLite libraries. These are required for selected atlas format.
When using 1.7 and creating BigPlanet maps you mentioned the need for downloading sqlite_jni win (64bit) and adding to the MOBAC directory. Is there something similar that needs to be done for OruxMaps?
-
Re: Offline maps on Android in China
Felix, Motokai and Slabo, all I can say is you guys are hardcore. This is the first motorcycling thread where I've seen actual coding posted! OK, so once you've sorted this all out, please kindly help us mere mortals out with instructions and an FAQ!
cheers!
-
Re: Offline maps on Android in China
Motokai, this is exactly the same problem you had before. To output sqlite files, you need to have that sqlite_jni.dll file in the mobac folder. Since you upgraded to mobac 1.8 that file is no longer in there.
Just do the same thing you did last time.
Euphonius, it's been hard work getting this far but it's nice that it's all sorted and working now. Are you sure you can't figure it out with the info in this thread? Extremely basic breakdown:
1 - Mobac 1.8 for your computer
2 - Oruxmaps for your android phone
3 - Edit coordinates in the xml file.
To all: never forget the power of google! I knew nothing about any of this a few weeks ago. FAQ and instructions already exist for Mobac and Oruxmaps, the only hard part is the china offset which i explained above.
If still needed, i may start a new thread with step by step.
-
Re: Offline maps on Android in China
Quote:
Originally Posted by
felix
Euphonius, it's been hard work getting this far but it's nice that it's all sorted and working now. Are you sure you can't figure it out with the info in this thread? Extremely basic breakdown:
1 - Mobac 1.8 for your computer
2 - Oruxmaps for your android phone
3 - Edit coordinates in the xml file.
If still needed, i may start a new thread with step by step.
Thanks for your confidence in my GPS hacking acumen, but there's a couple of major obstacles here:
First, I'm among those self-exiles to the land of OSX and iOS, having long given up on MSFT. (This is a form of masochism in China, where "computer" equals "MS Windows".) While I realize Mobac runs in Java, which is supported under OS X, I am all thumbs when it comes to customizing systems the way you MSFT-enabled young turks do.
Second, I don't have an Android phone, only an iPhone. I do recall, perhaps in this forum, someone raving about how easy it was to sidestep all of this and set up the iPhone as a China GPS, but I must now admit that my specific place of exile in the OSX/iOS world is described by a prehistoric iPhone 2g, which predated the "assisted GPS" found in 3g and later models.
My iPhone will usually find my location in China, triangulating from multiple cell towers, but a reliable GPS it ain't. My next phone will be either iPhone 4 (or even iPhone 5, which is reputedly in the works) or some Android-flavored device. I can't afford either right now...
So for now I'll live with my Garmin Zumo 660.
-
Re: Offline maps on Android in China
Yes, here's that post I remember -- Stefan in Ningbo voting for iPhone with MotionX GPS.
Quote:
Originally Posted by
steve_nb
The daily topic apple versus the rest of other phones... Yes, android will be on more phones by 2012 then iPhone iOS which is a simple fact because there are many manufactors for android but only on for iphone. And closed versus open system? Yes it's nice to have an open source system, so Linux might be great for you instead of Windows, but for many it's too complicated, same goes for Mac versus PC. Don't let me get into this as the topic was about GPS offline.
I am using my iPhone with "MotionX GPS" and it's great for all you ever wanted, you can record your tracks, one can store offline maps (open street maps & open terrain maps) or if you have a GPRS/3G package you have google maps / satellite view as well. Compass, waypoints, altitude and so on.
Check it on the app store, it has several other great features which I don't have to repeat here. I just got an otter box, but now looking into the best way to fix it on my Suzuki DRZ.
Stefan
So Stefan, surely you are using at least an iPhone 3G or 3GS, right? Maybe now that the iPhone 4 is out I can pick up a cheap 3GS....
cheers!
-
Re: Offline maps on Android in China
<<Motokai, this is exactly the same problem you had before. To output sqlite files, you need to have that sqlite_jni.dll file in the mobac folder. Since you upgraded to mobac 1.8 that file is no longer in there. Just do the same thing you did last time.>>
Thanks Felix. Assume the libraries are app-specific?
The 64bit jni library I have is for creating BigPlanet SQLite atlases on MOBAC.
Where did you find the sqlite.jni.dll file for OraxMaps?
-
Re: Offline maps on Android in China
you guys are just making this shit up. yankin' my chain. stop it.
-
Re: Offline maps on Android in China
Quote:
Originally Posted by
MotoKai
Thanks Felix. Assume the libraries are app-specific?
They are not. I'm don't know exactly what an sqlite library is, but it's the same file for both apps.