如何在现有的Android项目中集成来自AWS Mobile Hub示例项目的推送服务?

时间:2016-09-02 09:38:12

标签: android amazon-web-services push-notification google-cloud-messaging aws-mobilehub

我使用AWS Mobile Hub创建了一个带有用户登录和推送通知服务的Android示例项目。

我已下载该项目并通过Android Studio打开它,以便从示例项目中获取推送通知所需的文件,并将其集成到我现有的Android应用程序中。

我认为这很简单,但后来我发现了这个巨大的文件分支:

AWS Mobile Hub Sample Project - 'src' Folder File Branch

很难理解我需要哪些文件以及我不需要哪些文件。您能否帮我弄清楚我需要将哪些内容导入现有项目才能在我的应用中集成推送通知?

2 个答案:

答案 0 :(得分:1)

您应该将textarea逐字复制到您的新项目以及AndroidManifest.xml和build.gradle以及Application.java的部分内容。

如需完整说明,我建议您浏览Mobile Hub Console>项目名称>构建>选择Android>在左侧去开发>用作示例。

您将找到Android项目所需的所有说明

答案 1 :(得分:0)

“PushListenerService”类基本上是一个有用的示例类,其中发生了魔法。所以保留每个支持该类的文件。

private static void generateNotification(Context context, final String message)

显示通知消息。

另一个重要的注意事项是如何获取用户的设备端点值。这可以使用“PushManager”类获得。

String endpoint = pushManager.getEndpointArn();

设备的端点ARN可帮助您向该设备发送直接通知。

PublishRequest publishRequest = new PublishRequest();
publishRequest.setMessage(message);
publishRequest.setSubject(subject);
publishRequest.withTargetArn(endpoint); //This can also be a "topic" ARN
snsClient.publish(publishRequest);

AWS的工作人员做得非常好。非常感谢他们! :d

没有简单的方法。只需花时间浏览与您要实现的AWS服务相关的类中的所有代码。祝你好运!

顺便说一句,请确保在向其发送通知时,您的应用未在测试设备上打开,否则您的应用已经在运行,您将看不到通知。我注意到这是默认行为。