HUAWEI HiCar是华为提供的人-车-家全场景智慧互联解决方案,HUAWEI HiCar将移动设备和汽车连接起来,将手机的应用和服务延展到汽车,实现手机为核心的全场景体验,为用户创造更佳的智慧出行体验。华为给手机应用提供了HiCar Kit开放能力,应用可以无感的使用汽车的共享设备资源和数据,方便手机上的应用接入支持HUAWEI HiCar。
通过本篇CodeLab,您将创建Demo Projrct,并将接入支持HUAWEI HiCar,创建和删除卡片。
实现Codelab的具体操作步骤,可以分为多个步骤来说明,每个步骤需要注意的以下几点。
1.集成SDK
在该页面下载SDK并将其解压之后是:huawei-hicar-sdk.aar包。添加依赖库。将下载好的huawei-hicar-sdk.aar包复制至工程中的app/libs下。
2.添加appid信息
在自身应用AndroidManifest.xml中添加开发者联盟创建应用时生成的appid信息,name为" com.huawei.hms.client.appid ",value为"appid=***",***用自己注册的appid。
AndroidManifest.xml
<meta-data
android:name="com.huawei.hms.client.appid"
android:value="appid=应用自己的appid" />
3.配置跳转Activity
以地图类应用为例,在androidManifest.xml跳转Activity进行配置
AndroidManifest.xml
<intent-filter>
<action android:name="huawei.intent.action.hicar.MAP" />
<category android:name="huawei.intent.category.hicar.MAP" />
</intent-filter>
4.创建卡片CardMgr.java
public void createQjCard(int callCardId) {
initResource();
CardBuilder messageCardBuilder = Card.createCardBuilder(mContext, 6, 0);
messageCardBuilder.setTitle(callCardId, "情景智能" + callCardId)
.setInfoImage(mContext.getDrawable(R.drawable.image_departure), ConstantEx.InfoImageStyle.ICON)
.setMainText("[img]10:16[img]" + callCardId,
R.drawable.icon_huawei_intelligent,
R.drawable.icon_huawei_intelligent)
.setSubText("[img]上海浦东T2出发12:15到达深圳宝安" + callCardId, R.drawable.icon_huawei_intelligent)
.setOptText("东航MU5413[img]" + callCardId, R.drawable.icon_huawei_music)
.setPendingIntent(getActivityIntente());
try {
com.huawei.hicarsdk.builder.CardMgr.createCard(mContext, messageCardBuilder, new CreateCardBack() {
@Override
public void callBack(int i) {
messageCardId = i;
mCardIdList.add(i);
}
@Override
public void remoteServiceNotRunning() {
}
});
} catch (RemoteServiceNotRunning remoteServiceNotRunning) {
remoteServiceNotRunning.printStackTrace();
}
}
5.注册广播接收器
HiCar在启动和结束时都会有广播或者是Service通知,应用需要根据提示完成业务接续。
AndroidManifest.xml
<receiver
android:name="com.example.carddemo.MyRes"
android:enabled="true"
android:exported="true"
android:permission="com.huawei.hicar.HICAR_PERMISSION">
<intent-filter>
<action android:name="com.huawei.hicar.ACTION_HICAR_STARTED"/>
</intent-filter>
<intent-filter>
<action android:name="com.huawei.hicar.ACTION_HICAR_STOPPED"/>
</intent-filter>
<intent-filter>
<action android:name="com.huawei.hicar.ACTION_CARD_UPDATE"/>
</intent-filter>
<intent-filter>
<action android:name="com.huawei.hicar.ACTION_CARD_REMOVE"/>
</intent-filter>
<intent-filter>
<action android:name="com.huawei.hicar.ACTION_CARD_PAUSE"/>
</intent-filter>
<intent-filter>
<action android:name="com.huawei.hicar.ACTION_CARD_RESUME"/>
</intent-filter>
</receiver>
我们已经接入了CarKit,接下来进行验证。连接车机环境,点击"添加情景智能卡片""添加音乐卡片""添加导航卡片",将出现下图所示内容:
您已完成了本篇Codelab学习:
关于HiCar更多信息,请阅读以下链接: