当 shouldsimulate 为 false 时,React Native mapbox android 导航崩溃
Posted
技术标签:
【中文标题】当 shouldsimulate 为 false 时,React Native mapbox android 导航崩溃【英文标题】:React Native mapbox android navigation crashes when shouldsimulate is false 【发布时间】:2021-08-17 12:48:11 【问题描述】:我正在使用包@homee/react-native-mapbox-navigation 进行逐个导航。下面你可以看到依赖和版本:
"dependencies":
"@homee/react-native-mapbox-navigation": "^1.1.0",
"react": "17.0.1",
"react-native": "0.64.2"
当我设置属性 shouldSimulateRoute=true 时,包工作正常。当我将其设置为 false 或将其删除时,应用程序在 androidphone 上崩溃。在我的模拟器上,它给了我一个错误的位置。
这是我的 gradle.build:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript
ext
buildToolsVersion = "29.0.3"
minSdkVersion = 21
compileSdkVersion = 29
targetSdkVersion = 29
ndkVersion = "20.1.5948944"
repositories
google()
jcenter()
dependencies
classpath("com.android.tools.build:gradle:4.1.0")
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
allprojects
repositories
mavenLocal()
maven
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
url("$rootDir/../node_modules/react-native/android")
maven
// Android JSC is installed from npm
url("$rootDir/../node_modules/jsc-android/dist")
maven
url 'https://api.mapbox.com/downloads/v2/releases/maven'
authentication
basic(BasicAuthentication)
credentials
// Do not change the username below.
// This should always be `mapbox` (not your username).
username = "mapbox"
// Use the secret token you stored in gradle.properties as the password
password = project.properties['MAPBOX_DOWNLOADS_TOKEN'] ?: ""
google()
jcenter()
maven url 'https://www.jitpack.io'
在我的 AndroidManifest.xml 文件中,我添加了这行代码
<meta-data android:name="MAPBOX_ACCESS_TOKEN" android:value="code_here" />
我在我的 MainApplication.java 中导入了这个:
import com.homee.mapboxnavigation.MapboxNavigationPackage;
奇怪的是,当我将 is 设置为 false 时 shouldSimulate 为 true 时一切正常,因为默认设置应该不再起作用。
有人知道如何解决这个问题吗?
谢谢!
【问题讨论】:
【参考方案1】:我已经解决了这个问题。看起来如果您关闭 shouldSimulateRoute 属性并将其设置为 false 您必须使用用户当前位置,因此您无法对其进行硬编码。这对我有帮助!
【讨论】:
以上是关于当 shouldsimulate 为 false 时,React Native mapbox android 导航崩溃的主要内容,如果未能解决你的问题,请参考以下文章
当 ShowsPlaybackControls 为 False 时,AVPlayerViewController 不会自动旋转视频
为啥当 Debug 设置为 False 时,Django 会为静态媒体生成 HTTP 500 错误?
当命令 CanExecute 为 false 时,按钮不会被禁用