适用于 Android 设备的公路/越野 GPS 导航器。
受到 Karry 的 osmscout 的强烈启发,它使用 libosmscout 的一个分支作为后端。它包括通用指南针、跟踪器、GPX 读写器、道路路由器、POI 数据库等功能。
支持的 Android 操作系统为 Nougat (Android 7.0) 或更高版本、LineageOS 14.1 或更高版本。
您可以通过 IzzyOnDroid F-Droid 存储库安装 osmin,该存储库应通过从“设置”>“存储库”启用 IzzyOnDroid 来使用,否则,请参阅 IzzyOnDroid 主页上的说明。或者,可在发布页面上找到适用于armv7(32位)和arm64(64位)设备的APK。
您可以在 Qt 5.15 支持的 Unix(Linux、BSD、MacOS 13)上构建和测试 osmin。在从源代码构建之前,您必须安装以下依赖项。
git, cmake, clang/clang++ ( >=14.0 ), OpenMP, Qt5Core ( >=5.15 ), Qt5Gui, Qt5Qml, Qt5Quick, Qt5QuickControls2, Qt5Widgets, Qt5Xml, Qt5Svg, Qt5Network, Qt5Sensors, Qt5Multimedia, Qt5RemoteObjects, Qt5Positioning, Qt5DBus, lib dbus- 1、zlib1g、libxml2、liblzma、OpenSSL
作为示例,在 Ubuntu (>=22.04) 上键入以下命令来安装所有要求。
sudo apt install git cmake clang curl wget libomp-dev zlib1g-dev libxml2-dev liblzma-dev libdbus-1-dev libssl-dev libreadline-dev libqt5remoteobjects5-bin libqt5quickwidgets5 libqt5quickcontrols2-5 libqt5qmlmodels5 libqt5qml5 libqt5positioning5 libqt5remoteobjects5-dev libqt5svg5-dev libqt5sensors5-dev libqt5dbus5 qtquickcontrols2-5-dev qtmultimedia5-dev qtpositioning5-dev qml-module-qtgraphicaleffects qml-module-qtquick2 qml-module-qtquick-layouts qml-module-qtquick-controls2 qml-module-qt-labs-settings
或者在 Fedora 40 上输入以下内容。
sudo dnf install git cmake clang curl wget libomp-devel zlib-ng-compat-devel libxml2-devel dbus-devel readline-devel openssl-devel qt5-qtbase-devel qt5-qtremoteobjects-devel qt5-qtsensors-devel qt5-qtsvg-devel qt5-qtdeclarative-devel qt5-qtmultimedia-devel qt5-qtquickcontrols2-devel qt5-qtlocation-devel qt5-qtdeclarative qt5-qtbase qt5-qtsvg qt5-qtbase-gui qt5-qtgraphicaleffects qt5-qtremoteobjects qt5-qtsensors qt5-qtquickcontrols2 qt5-qtimageformats qt5-qtlocation qt5-qtmultimedia qt5-qttools qt5-qtxmlpatterns qt5-qtmultimedia-devel qt5-qtlocation-devel qt5-linguist qt5-qttranslations
克隆源
git clone https://github.com/janbar/osmin.git
移至源路径并配置构建。
cd osmin git submodule init git submodule update --force mkdir build
要构建包含模拟工具的桌面版本,请使用以下命令。
cmake -B build -DBUILD_SIMULATOR=ON -DCMAKE_C_COMPILER=/usr/bin/clang -DCMAKE_CXX_COMPILER=/usr/bin/clang++ .
如果目标设备是移动设备,则应使用以下命令启用移动设备的行为。
cmake -B build -DBUILD_DEVICE_MOBILE=ON -DCMAKE_C_COMPILER=/usr/bin/clang -DCMAKE_CXX_COMPILER=/usr/bin/clang++ .
您可以混合使用BUILD_SIMULATOR
和BUILD_DEVICE_MOBILE
选项来使用模拟工具测试移动设备的行为。最后构建它以制作目标二进制文件osmin
。
cmake --build build/ -j8
在构建树之外运行 Osmin,您必须安装所需的资产。
sudo cmake --build build/ --target install
可以通过以下命令来完成卸载sudo cmake --build build/ --target uninstall
。
APK 的安装可以毫无问题地实现。从版本 1.11.0 开始,由于 Android 14 及更高版本的限制,设备的外部存储中不再允许存储地图。因此地图数据库存储在设备的内部存储器中,用户无法访问它们。 GPX 文件、收藏夹文件和一些配置文件存储在用户区域,即Android/data/io.github.janbar.osmin/files/
。当设备插入 USB 端口或直接使用 Android 文件管理器时,即可访问此文件夹。这样您就可以自己管理这些内容。
启动时,应用程序会在用户的主目录中创建存储文件夹: osmin
。它包含用户数据、配置文件、下载的地图或语音以及资源。模拟工具的二进制文件未安装在系统树中。它可以在构建树simulator/osmin-simulator
中找到。