繁体   English   中英

Android 自动应用程序未显示在物理设备上

[英]Android Auto app doesn't show up on physical device

目前正在测试 Android Auto,我们现在正在物理设备(在汽车中)上进行测试。 到目前为止,我已经设法将工作 Android 自动支持添加到我们正在绘制一些基本模板的应用程序中。 这适用于模拟的 DHU 和应用程序显示并且可以使用。 问题是当我们在物理设备上进行测试时,它并没有出现。 我的应用程序当前显示在模拟的 DHU 中。 所有必要的开发人员设置都已打开,因此这应该不是问题。

作为控制测试,我通过 Android Studio 使用 > Automotive > Media Service 创建了一个新项目,只是为了确保它实际上可以在物理设备上进行测试。 无需修改并在设备上进行全新安装,汽车即可识别该应用程序,并且该应用程序可通过电缆连接(物理设备)在汽车中使用。

我怀疑我在不同的清单中忽略了一些东西。

这是项目应用程序的共享清单:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.itf_aa.shared">
    
    <application>
        
        <meta-data
            android:name="com.google.android.gms.car.application"
            android:resource="@xml/automotive_app_desc" />
        
        <meta-data android:name="androidx.car.app.minCarApiLevel"
            android:value="1" />

        <service
            android:name="com.example.itf_aa.shared.MainGridService"
            android:exported="true">
            <intent-filter>
                <action android:name="androidx.car.app.CarAppService" />
            </intent-filter>
        </service>

    </application>

</manifest>

同时这是控制应用程序的共享清单:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.myapplication.shared">

<application android:appCategory="audio">

    <meta-data
        android:name="com.google.android.gms.car.application"
        android:resource="@xml/automotive_app_desc" />

    <!-- Main music service, provides media browsing and media playback services to
     consumers through MediaBrowserService and MediaSession. Consumers connect to it through
     MediaBrowser (for browsing) and MediaController (for playback control) -->
    <service
        android:name="com.example.myapplication.shared.MyMusicService"
        android:exported="true">
        <intent-filter>
            <action android:name="android.media.browse.MediaBrowserService" />
        </intent-filter>
    </service>

</application>

我怀疑问题出在意图过滤器中,似乎是差异制造者。 有谁知道我是否可以在意图过滤器中使用其他任何东西,或者我的清单可能是错误的? 这是我唯一怀疑是差异制造者的事情,因为我看不出应用程序类别如何使它与众不同。 为什么应用在使用“android.media.browse.MediaBrowserService”时会显示物理设备,而在使用“androidx.car.app.CarAppService”时不会显示?

我很感激我在这方面可能得到的任何帮助,所以提前感谢您的时间和帮助。 如果我遗漏了某些内容或您需要更多详细信息,请告诉我。 ❤️

原来答案可以在这里找到。

答:为了在物理设备上进行测试,您需要启动内部测试轨道并接受 Android 自动附录。 然后通过开发者控制台部署测试。

为了让您的应用在真正的主机(不是我们提供的桌面主机)上运行,您的应用必须通过 Google Play 商店分发。 这可确保您的应用程序已经过测试和审查,是否符合我们的指南。 这些指南确保您的应用程序与汽车环境相关,并通过我们的驾驶员分心测试。

它与清单无关。 仍然不确定为什么示例项目会绕过这一点,但肯定是 Google 应用程序的某种白名单。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM