我是Android开发人员,我正在尝试开发一个自定义Android Auto应用程序,它可以对手机屏幕进行简单的镜像.我知道目前API仅适用于音乐和消息传递应用程序,但我会为镜像编写一个简单的"hello world".我按照Google入门教程进行操作,并使用Google提供的桌面主机(DHU)(在developer.android.com/training/auto/testing/index.html)
但是当我点击显示屏底部的最后一个按钮并选择"所有汽车应用程序"时,我的应用程序不会出现在列表中.
例如,如果在三星平板电脑(SM-T555)中启动Android Auto,则DHU会列出以下应用:
com.google.android.gms,地图,系统用户界面,视频,SampleAuthenticatorService,SecureSampleAuthService,屏幕截图,Android自动,电话,媒体,返回Google,三星计费,Google App,Google Play音乐,音乐
如何制作Android Auto中可用应用列表中显示的应用?是否可以在Android Auto中为自定义应用镜像?
创建这样的服务:
public class HelloWorldService extends CarActivityService {
@Override
public Class<? extends CarActivity> getCarActivity() {
return HelloWorldAutoActivity.class;
}
}
Run Code Online (Sandbox Code Playgroud)
然后将服务添加到清单中,如下所示:
<meta-data
android:name="com.google.android.gms.car.application"
android:resource="@xml/automotive_app_desc" />
<service
android:name=".HelloWorldService"
android:exported="true"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="com.google.android.gms.car.category.CATEGORY_PROJECTION" />
<category android:name="com.google.android.gms.car.category.CATEGORY_PROJECTION_OEM" />
</intent-filter>
</service>
Run Code Online (Sandbox Code Playgroud)
最后在res文件夹下创建一个名为automotive_app_desc的xml文件:
<automotiveApp>
<uses name="service" />
<uses name="projection" />
<uses name="notification" />
</automotiveApp>
Run Code Online (Sandbox Code Playgroud)
您的HelloWorldAutoActivity.class将作为您的MainActivity.
| 归档时间: |
|
| 查看次数: |
4948 次 |
| 最近记录: |