我需要一种向Android设备发送信息的好方法,该设备不使用具有XML数据的特殊服务器。我想以电子邮件功能为基础。假设我发送了一封电子邮件,其中包含一些特殊的文字/链接,点击这些文字/链接时会启动并打算使用手机。
我不想替换用户当前的电子邮件应用程序。可点击的链接最好是“intent:// data1:data2”或类似的东西。
关于如何进行的推测/解决方案。
答案 0 :(得分:2)
是的,你可以这样做。您在应用程序中注册一个活动作为您自己的协议(方案)的处理程序。应用程序清单将具有以下内容:
<activity android:name=".SchemeActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="myownprotocol" />
</intent-filter>
</activity>
此活动不会在应用程序启动器中显示或获取图标,因此除了此活动之外,您可能还有一个“普通”活动。
现在,任何网页都可以包含以下链接:
<a href="myownprotocol://12345">Sample link</a>
安装完应用程序后,您应该可以在Web浏览器中单击此类链接,并显示示例中的SchemeActivity。在该活动中,您可以通过以下方式获取整个链接(并解析其他ID /数据或其他任何内容):
String fullUrl = getIntent().getDataString();