我正在为Android Auto构建一个媒体播放器,并努力制作一个出现在汽车显示器主机上的简单Toast消息。
在我的自定义操作中,我有一个需要在Car界面上显示Toast消息的操作,但是当我实现toast时,它只显示在手持设备/手机上。
我已经搜索了互联网的高低,并且无法找到关于在汽车主机单元上显示祝酒词的任何内容,即使它已在Android自动设计指南中列出:: https://designguidelines.withgoogle.com/android-auto/android-auto/app-ui.html#app-ui-drawer
有人可以指点我在Android自动平台上提供视觉反馈或祝酒的例子吗?
答案 0 :(得分:0)
你不能。
如果你看一下以下问题:Develop an Android Auto custom app我已经共享了一个jar,你可以使用它来使用一些非官方的Android Auto SDK,你可以导入它:
import com.google.android.apps.auto.sdk.CarToast;
import com.google.android.apps.auto.sdk.notification.CarNotificationExtender;
但是,即使您导入类并使用CarToast,如下所示:
CarToast.makeText(context,"SPEED CAMERA: " + text, Toast.LENGTH_LONG).show();
它只会在手机屏幕上显示吐司,而不是在投影屏幕上显示。
因此,要正确显示消息,您需要执行以下操作:
CarToast.makeText(context,"SPEED CAMERA: " + text, Toast.LENGTH_LONG).show();
CarNotificationExtender paramString2 = new CarNotificationExtender.Builder()
.setTitle(title)
.setSubtitle(text)
.setShouldShowAsHeadsUp(true)
.setActionIconResId(R.drawable.ic_danger_r)
.setBackgroundColor(Color.WHITE)
.setNightBackgroundColor(Color.DKGRAY)
.setThumbnail(bmp)
.build();
NotificationCompat.Builder mynot = new NotificationCompat.Builder(context)
.setContentTitle(title)
.setContentText(text)
.setLargeIcon(bmp)
.setSmallIcon(R.drawable.ic_danger_r)
.setColor(Color.GRAY)
.extend(paramString2);
mNotifyMgr.notify(1983,mynot.build());
这将显示只在手机屏幕上显示的吐司,它将显示只在汽车屏幕上显示的抬头通知。由于没有附加任何操作,如果用户与通知交互,则不会发生任何事情。
如果手机已连接到汽车,则无论如何都会关闭手机的屏幕,因此显示Toast会被忽略。
所有这一切的问题在于,由于它是一个非正式的jar并且公众无法使用SDK,因此您无法在PlayStore上发布应用程序:(,据说我只是尝试发布完整的应用程序,但只显示通知的应用程序可能会通过过滤器。