繁体   English   中英

是否可以在Android Wear上以编程方式运行导航?

[英]Is it possible to programmatically run navigation on Android Wear?

我正在为我的Android应用程序进行扩展。 我可以获得android的通知,而不会出现我想要的所有数据的问题。 我已经发送通知的每个POI都有lat和long,我想在android服装通知中添加一个功能“导航到”,这将采用这个坐标并在智能手表上运行谷歌导航。 这可能吗? 你能提供一些例子或文件吗? 谢谢

这是我在我的应用程序中使用的示例代码,通过单击我的android服装上的“在地图上打开”按钮在手机上运行谷歌地图。

    Intent mapIntent = new Intent(Intent.ACTION_VIEW);
    Uri geoUri = Uri.parse("geo:0,0?q=" + chapter.getLatitude() + "," + chapter.getLongitude());
    mapIntent.setData(geoUri);
    PendingIntent mapPendingIntent =
            PendingIntent.getActivity(context, 0, mapIntent, 0);
    ...

    .addAction(R.drawable.ic_map_white_24dp, "Open on map", mapPendingIntent)

据我所知,你已经达到了目标。 一旦您能够在手机上开始导航,它将自动显示在您的手表上,作为通知卡显示在您的表盘底部。

我正在开发一个应用程序,我正在做同样的事情,除了我使用CardFragments触发动作而不是使用Wearable Notifications和PendingIntents。 当我按下手表上显示的CardFragment的操作按钮时,我正在向我的电话应用程序发送可穿戴消息,该消息在收到此特定消息时运行以下代码。

String uri = "google.navigation:q=" + String.valueOf(latitude) + "," + String.valueOf(longitude);
Intent mapsIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));
mapsIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(mapsIntent);

我必须设置FLAG_ACTIVITY_NEW_TASK,因为代码是普通java类方法的一部分。 当手机屏幕解锁并且屏幕打开时,一切正常。 但是,导航也应该在手机锁定时启动。 这是我目前正在努力的地方。

暂无
暂无

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

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