从短信/邮件链接到Android应用程序

时间:2011-01-17 19:43:13

标签: android hyperlink sms

我想知道我们是否可以通过我的应用程序处理SMS中的链接。例如,一个看起来像myapp:// blabla的链接。通过点击它myapp将打开,链接作为参数。

此问题还指电子邮件,来自具有特殊扩展名的文件或SMS中的链接。

非常感谢你的帮助。


编辑31/01

实际上,我做了Greg所建议的但是没有用。这样的链接(myapp:// blabla)在短信/电子邮件中无法点击...当我用http替换myapp作为方案时,它可以工作(Android问我应该打开与myapp或浏览器的链接)。但myapp:// blabla不能用myapp作为方案点击。 这是我的代码:

   <application android:icon="@drawable/icon" android:label="@string/app_name"
android:debuggable="true">
<activity android:name=".myapp"
          android:label="@string/app_name"
          android:theme="@android:style/Theme.NoTitleBar"
          android:launchMode="singleTask"
          android:screenOrientation="portrait">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.BROWSABLE" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:scheme="myapp" android:host="blabla" />
        </intent-filter>
    </activity>

    <activity android:name=".SecondActivity"></activity>
    <activity android:name=".SettingsActivity"></activity>
</application>

1 个答案:

答案 0 :(得分:2)

是的,您可以使用意图过滤器。

基本上在你的Android Manifest中,选择一个你想成为处理给定网址的活动。

<activity android:name=".myactivies.MyActivity">
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="myapp" android:host="blabla" />
</intent-filter>
</activity>

然后在你的活动中你可以通过调用意图上的getData()来获取url。