作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
ArCoreApk 检查可用性在 API 级别 29 及以下返回 true 但在 30 返回 false。有什么想法吗?
fun checkArCoreAvailability(context: Context) {
var message: String? = null
var isArCoreInstalled = false
try {
when (ArCoreApk.getInstance().checkAvailability(context)) {
ArCoreApk.Availability.UNKNOWN_ERROR -> {
message = "This device does not support AR, starting normal session"
}
ArCoreApk.Availability.UNKNOWN_CHECKING -> {
message = "This device does not support AR, starting normal session"
Handler().postDelayed({
checkArCoreAvailability(context)
}, 250)
}
ArCoreApk.Availability.UNKNOWN_TIMED_OUT -> {
message = "This device does not support AR, starting normal session"
}
ArCoreApk.Availability.UNSUPPORTED_DEVICE_NOT_CAPABLE -> {
message = "This device does not support AR, starting normal session"
}
ArCoreApk.Availability.SUPPORTED_NOT_INSTALLED -> {
message = "Please install ArCore to use pinned annotations"
}
ArCoreApk.Availability.SUPPORTED_APK_TOO_OLD -> {
message = "Please update ArCore to use pinned annotations"
}
ArCoreApk.Availability.SUPPORTED_INSTALLED -> {
isArCoreInstalled = true
message = "Starting AR Session"
}
null -> {
message = "This device does not support AR, starting normal session"
}
}
} catch (e: UnavailableArcoreNotInstalledException) {
message = "Please install ARCore to use pinned annotations"
} catch (e: UnavailableUserDeclinedInstallationException) {
message = "Please install ARCore to use pinned annotations"
} catch (e: UnavailableApkTooOldException) {
message = "Please update ARCore to use pinned annotations"
} catch (e: UnavailableSdkTooOldException) {
message = "Please update this app"
} catch (e: java.lang.Exception) {
message = "This device does not support AR, starting normal session"
}
Toast.makeText(context, message, Toast.LENGTH_LONG).show()
}
最佳答案
尝试向 list 中添加适当的查询项:
<manifest>
<queries>
<package android:name="com.google.ar.core" />
</queries>
</manifest>
关于android - ArCoreApk 检查可用性不适用于 api 30,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68365368/
ArCoreApk 检查可用性在 API 级别 29 及以下返回 true 但在 30 返回 false。有什么想法吗? fun checkArCoreAvailability(context: Co
ArCoreApk 检查可用性在 API 级别 29 及以下返回 true 但在 30 返回 false。有什么想法吗? fun checkArCoreAvailability(context: Co
我是一名优秀的程序员,十分优秀!