首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么当我删除@SuppressLint("RestrictedApi")时,Android只显示“从同一个库组中调用”?

为什么当我删除@SuppressLint("RestrictedApi")时,Android只显示“从同一个库组中调用”?
EN

Stack Overflow用户
提问于 2019-10-26 03:02:20
回答 2查看 2K关注 0票数 4

代码A来自CameraX项目,您可以看到源代码

当我删除@SuppressLint("RestrictedApi")时,Android将显示“只从同一个库组调用”,您可以看到图像1。

为什么我不能删除代码A中的@SuppressLint("RestrictedApi")?限制API意味着什么?

码A

代码语言:javascript
复制
@SuppressLint("RestrictedApi")
    private fun updateCameraUi() {
        ...

        // Listener for button used to switch cameras
        controls.findViewById<ImageButton>(R.id.camera_switch_button).setOnClickListener {
            lensFacing = if (CameraX.LensFacing.FRONT == lensFacing) {
                CameraX.LensFacing.BACK
            } else {
                CameraX.LensFacing.FRONT
            }
            try {
                // Only bind use cases if we can query a camera with this orientation
                CameraX.getCameraWithLensFacing(lensFacing)

                // Unbind all use cases and bind them again with the new lens facing configuration
                CameraX.unbindAll()
                bindCameraUseCases()
            } catch (exc: Exception) {
                // Do nothing
            }
        }
    }

图像1

EN

回答 2

Stack Overflow用户

发布于 2020-03-05 14:32:46

自本教程编写以来,库中发生了一些重大变化。

将包版本恢复到1.0.0-alpha06,与教程一样,解决了这个问题。

票数 2
EN

Stack Overflow用户

发布于 2020-03-02 13:47:37

这些问题与库不影响您的代码。

在使用这些API的几个代码示例中,文件中经常有一个@SuppressLint("RestrictedApi")隐藏警告。

尽管您必须确保使用的是正确的依赖版本,但项目仍然应该按其应有的方式编译和运行。API的变化非常频繁,如果您引用的是一个示例,那么它可能使用的是一个已经更改的旧版本。

最好的方法是直接查看源代码,如果您正在调用的方法声明为public,那么您可能不会有问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58567716

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档