代码之家  ›  专栏  ›  技术社区  ›  Doot

从Android Automotive OS中的“Screen”子类方法中获取“Activity”实例

  •  0
  • Doot  · 技术社区  · 1 年前

    我正在尝试在安卓(13)汽车操作系统中制作一个简单的应用程序。我的理解非常有限,尤其是在活动方面。在 onGetTemplate ,我希望申请许可,这需要 Activity 例子是否可以获得 活动 从这里?

    class AutoDemoScreen(carContext: CarContext) : Screen(carContext) {
        override fun onGetTemplate(): Template { ... }
    }
    

    我尝试过递归查找,使用 getBaseContext() ,但没有 活动 将被找到。我应该创造一个新的 Fragment 子类,并以某种方式将其链接到我的主屏幕?我一直在看一些GitHub存储库,但对我来说,它大多很难解析。

    非常感谢。

    0 回复  |  直到 1 年前
        1
  •  2
  •   Ben Sagmoe    1 年前

    您可以使用 CarContext s requestPermissions(...) 方法在使用汽车应用程序库构建的应用程序中请求权限。看见 Request permissions 详细信息。如果您希望实现自己的权限活动 implementation of that method 可能对如何自己做这件事有帮助。

    我尝试过使用getBaseContext()递归查找,但找不到任何Activity。

    这是预期的,因为屏幕代码是作为服务的一部分运行的(您的 CarAppService ),而不是活动。