Android 应用程序:在手机之间共享简单数据

Posted

技术标签:

【中文标题】Android 应用程序:在手机之间共享简单数据【英文标题】:Android apps: sharing simple data between phones 【发布时间】:2011-07-06 04:19:41 【问题描述】:

这就是我想做的事情:我正在尝试制作一个管理拼车的 android 应用。我坚持的是如何在每个人的手机上共享有关谁骑车的数据。

我见过许多涉及在手机之间共享大量数据以及需要设置服务器或使用 C2DM 框架的主题。我正在寻找更简单的东西。有没有办法让一部手机向拼车中的其他手机发送消息,以便只有应用程序会检测到它?我不想淹没每个人的短信收件箱,所以我想避免短信。

【问题讨论】:

【参考方案1】:

有很多线程在讨论一个解决方案,即使用 Google 的 Android Cloud To Device Messaging (C2DM)。

以下是链接:

Push Notifications in Android Platform Does Android support near real time push notification? http://blog.boxedice.com/2010/10/07/android-push-notifications-tutorial/

【讨论】:

【参考方案2】:

Re:“设置服务器或使用 C2DM 框架”- 不幸的是,这两个不是排他性的。不幸的是,您几乎可以肯定必须在某处设置服务器来跟踪通信(您不能依赖发件人或收件人同时在线)。在你运行之后,你是否使用c2dm就是一个问题。

只要您的大多数用户群是 2.2 或更高版本,我会强烈推荐 c2dm。如果您的显着低于 2.2,那么您可以使用 message-over-google-talk 类型的策略 - 但根据您的消息的复杂性,这可能会变得混乱。

请不要考虑从您的应用自动发送短信。这似乎是一个合理的做法,但我认为您的用户不会更喜欢这个选项(仅根据我对游戏的类似消息传输机制的研究)。

【讨论】:

【参考方案3】:

正如理查德所说,无论如何,您应该依赖服务器。对于日志记录和可靠性问题,到达一个固定点不是比到达池中的每个移动成员更容易吗?特别说明。如果您不想向他们的 SMS 收件箱发送垃圾邮件...

您可以尝试格式化您的数据,例如 SMS 管理器让您的应用完成其余的工作,方法是在消息开头发送特定序列并在之后删除它们?

您可以想象使用从您的机器人调用的单个签到脚本来跟踪您的汽车位置(使用简单的 HTTP 请求和 POST 数据),并且在每次更新汽车位置时,都有服务器向您的舰队发送推送通知。

C2DM 主题的优势在于它开始拥有一个精心打扮的文档和社区。但请记住,它仍处于测试阶段。

【讨论】:

【参考方案4】:

有一个启动 mCruiseOn 可以解决这个问题。我无法想象你做这个点对点,因为必须有一个中心位置(服务器),每个设备只路由那些与他们自己的需要相关的拼车。

我们正在使用 mCruiseOn api 进行出租车预订。很快我们就会有产品围绕它们。

老实说,使用现有的框架,我知道的唯一一个是 mCruiseOn。

【讨论】:

以上是关于Android 应用程序:在手机之间共享简单数据的主要内容,如果未能解决你的问题,请参考以下文章

在 Android 应用程序之间共享不可变文件

低功耗蓝牙(ESP32 和 Android 智能手机之间):数据传输很慢

在 Android 应用程序之间共享文件? [关闭]

在 2 个 Android 应用程序之间共享数据

android中的跨进程是啥意思

在 2 个 android 应用程序之间共享 SQLite 数据库?