从Aar Module Android执行Handheld类中的方法

时间:2015-01-05 01:08:46

标签: java android wear-os android-wear-data-api

我们假设我在MainActivity中有一个名为Emergencyalert()的方法,它的剂量是什么,它会向某些选定的联系人发送一些警告消息。因此,当用户点击Android Wear中的紧急按钮时,我想要一个只需执行手持设备中的Emergencyalert()方法的磨损应用程序。 我的项目中有两个不同的模块叫做mobile和wear。我用的是AndroidStudio。提前谢谢。

1 个答案:

答案 0 :(得分:2)

首先将您的Emergencyalert()方法转移到服务中(IntentService将是完美的:只需在服务Emergencyalert()中运行您的onHandleIntent()代码)。这是必要的,因为您的活动中的方法只能在您的活动打开并在屏幕上显示时调用(通过Wear应用程序激活时不会出现这种情况)。

您可以通过调用

IntentService中的Emergencyalert()替换为MainActivity,以确保startService(new Intent(MainActivity.this, EmergencyAlertIntentService.class)); 工作正常。
startService()

这将启动服务并发出紧急警报。

对于Android Wear部分,您的Wear应用程序需要send a Message到手持设备,并说明已按下紧急按钮。然后,您应该在掌上电脑应用中实施WearableListenerService并覆盖onMessageReceived()方法 - 在该方法中,拨打您在MainActivity中呼叫的同一{{1}},您的紧急警报将会当您点击Android Wear设备上的按钮时,即使您的应用处于后台也会触发。