从短信/彩信中启动Android应用程序?

时间:2010-06-21 17:08:51

标签: android sms

是否可以使用从Android消息应用程序(SMS或MMS)中启动的URL启动应用程序?

3 个答案:

答案 0 :(得分:41)

之前的答案不正确。

您可以为活动添加意图过滤器,以便“注册”您的应用以处理SMS正文中的超链接。

例如,如果将以下intent添加到application.xml:

<intent-filter>
  <action android:name="android.intent.action.VIEW"></action>
  <category android:name="android.intent.category.DEFAULT"></category>
  <category android:name="android.intent.category.BROWSABLE"></category>
  <data 
    android:scheme="http" 
    android:host="test.com" 
    android:pathPrefix="/myapp">
  </data>
</intent-filter>

您发送短信,内容如下:

http://test.com/myapp/somedata

您的应用程序将启动,活动将能够作为意图数据的一部分访问URL。

答案 1 :(得分:6)

另外由@Adam给出答案,

在Android应用程序的情况下有多个intent过滤器,我们必须使用两个。一个用于应用启动器,另一个用于使用短信中的URL启动应用

<activity android:name="com.SomeActivity" adroid:theme="@style/MyTheme"
android:label="@string/app_name"> 
    <!-- For app launcher -->
    <intent-filter>
       <action android:name="android.intent.action.MAIN" />
       <category android:name="android.intent.category.LAUNCHER" />
       <category android:name="com.YorAppPackage" />
    </intent-filter>
    <!-- To open app using link -->
    <intent-filter>
        <action android:name="android.intent.action.VIEW"></action>
        <category android:name="android.intent.category.DEFAULT"></category>
        <category android:name="android.intent.category.BROWSABLE"></category>
        <data android:scheme="http"
              android:host="yourdomain.com"
              android:pathPrefix="/someurlparam">
        </data>
    </intent-filter>
</activity>

现在在短信中添加一个类似

的网址
http://yourdomain.com/someurlparam

这应该在url点击启动应用程序,并在android中添加应用程序图标。

答案 2 :(得分:2)

不,唯一识别的URL是:

  • 网址。
  • 电子邮件地址。
  • 电话号码。
  • 地图地址。

来自TextViewandroid:autoLink XML属性。