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

服务的StartActivityForResult

  •  22
  • anon  · 技术社区  · 14 年前

    我想像中一样启用蓝牙 this example .

    然而,我的类不是活动而是服务,因此我不能称之为startActivityForResult。我怎样才能解决这个问题?。我知道还有其他问题已经得到了回答,比如

    use startActivityForResult from non-activity

    但这并不能解决我的问题,因为我的应用程序只包含服务而没有其他内容。

    4 回复  |  直到 7 年前
        1
  •  15
  •   Macarse    14 年前

    不幸的是你不能那样做。

    我找到的唯一解决方法(hack)是首先打开一个 Activity 然后在那里进行调用。

        2
  •  16
  •   emote_control    11 年前

    我知道这是一个老问题,但我遇到了类似的挑战,我的解决方案是创建一个带有android:theme="@android:style/Theme.NoDisplay,然后从中调用startActivityForResult()。这就创建了一个不可见的活动,它可以请求和接收意图,然后在某处写入数据,然后自己完成。

        3
  •  1
  •   0ne_Up    6 年前

    按照@Pomagranite的建议绑定到服务也可以,但这似乎更复杂:)

        4
  •  0
  •   Pomagranite    7 年前

    我认为解决方案是从服务启动活动,然后将活动绑定到服务并注册回调