2012-03-05 92 views
4

我使用osmdroid的離線版本,地圖放在SD卡/ osmdroid。你知道嗎,如何改變文件路徑?我一直在尋找他們的代碼來處理ZIP文件,但我還沒有找到任何解決方案。任何人都面臨過這個問題?Osmdroid - 更改本地地圖文件夾

THX

+4

http://code.google.com/p/osmdroid/source/browse/trunk/osmdroid-android/src/main/java/org/osmdroid/tileprovider/constants/OpenStreetMapTileProviderConstants.java – Blackbelt 2012-03-05 14:17:44

+0

@blackbelt - 那看起來像發現。靜態和最終在一個界面中,所以除非你從源代碼構建自己的版本,否則你就會停留在那裏。 – NickT 2012-03-05 14:22:31

+0

謝謝,現在我需要改變它。你知道黑帶,osmdroid在哪裏處理解壓ZIP文件?讓它成爲一個答覆,然後,我會給你一個聲望點。 Thx – Waypoint 2012-03-05 14:24:51

回答

2

Here你可以檢查出的代碼來構建自己的OSMdroid版本。更改ZIP和本地文件夾是完全可能的,幾個月前我必須自己做。如果你下載的代碼包約osmdroid

org/osmdroid/tileprovider/modules/ZipFileArchive.java 
org/osmdroid/tileprovider/modules/MapTileFileArchiveProvider.java 
+0

謝謝Thommy,我使用的是eclipse,我沒有在這裏看到任何svn橋接解決方案?我是否需要安裝一些插件才能查看OSMdroid源代碼? – Waypoint 2012-03-05 14:36:12

+2

您可以使用您首選的svn工具進行結賬。 Eclipse插件或獨立工具 - 無關緊要。您只需在結帳後刪除項目中的所有.svn文件夾。 – Thommy 2012-03-05 14:39:17

4

負責拉鍊是這個班osmdroid-android-3.0.8-sources,您可以打開類OpenStreetMapTileProviderConstants.java和修改變量這樣:

修改

public static final File OSMDROID_PATH = new File("/mnt/sdcard/osmdroid");

to*

public static final File OSMDROID_PATH = new File("/mnt/ext_sdcard/yourfile");

然後把你的地圖瓦片到yourfile

+0

這看起來像它會工作,但我不想分叉和編譯我自己的庫。我只會堅持SD卡。他們爲什麼要對它進行最終決定? – 2014-04-03 18:03:31

+0

我想是因爲他們想讓它保持不變。 @TomKincaid:D – gumuruh 2014-08-23 06:35:28