Google Daydream智能手机作为控制器(统一蓝牙)

时间:2019-04-11 20:36:45

标签: unity3d bluetooth android-bluetooth google-vr

是否可以将智能手机用作Google Daydream独立设备的控制器?

我们的计划是使用Android蓝牙插座在智能手机和Daydream设备之间打开蓝牙连接。然后,我们只是以自己的格式传输字节,然后在另一端对其进行解释。 这些都将在Unity中实现。

所以真正的问题是: -我们可以创建在Daydream中运行的Unity Android插件吗? -我们是否具有足够的权限来访问蓝牙API并以自定义方式使用它?

(我们也在评估OculusGo,但我们有相同的未知数)

1 个答案:

答案 0 :(得分:0)

是的,您可以从Unity请求蓝牙权限。您可能还想使用蓝牙插件,除非您想处理一些古怪的Java调用。 OculusGo和Daydream在内部仍是Android设备,您无法将它们取出并拨打电话。

令人惊讶的是,要使蓝牙正常工作,您还需要在AndroidManifest.xml中请求位置权限(那花了我一段时间)

  <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
  <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
  <uses-permission android:name="android.permission.BLUETOOTH"/>

我不确定是否确实需要BLUETOOTH_ADMIN。 我没有OculusGo的丰富经验,但我想它会与GearVR非常相似,因为在其中堆栈受到严格的保护,没有办法与绕过其API的控制器配对,而API却被锁定了(您需要生成OCUSIG为您的设备安装,否则应用程序将在启动时崩溃。不确定这对Go有多大作用

如果您要桥接两个android设备,则使用本地网络代替蓝牙传输要容易得多-发送UDP数据包最适合我,唯一的条件是设备必须共享一个本地网络,但要打开一个热点从一个应该做的把戏