2010-06-21 53 views

回答

2

沒有,唯一認可的網址是:

  • 網站的URL。
  • 電子郵件地址。
  • 電話號碼。
  • 地圖地址。

TextViewandroid:autoLink XML屬性。

+0

如何運行應用程序,因爲url集會嘗試打開瀏覽器,我想通過點擊某個鏈接啓動apk文件,這是從另一個設備發送的... – 2011-10-31 12:42:20

39

上一個答案不正確。

您可以爲活動添加意圖過濾器,該活動將「註冊」您的應用程序以處理SMS正文中的超鏈接。

舉例來說,如果你添加下面的意圖,你的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> 

你在身體下面發送SMS消息:

http://test.com/myapp/somedata 

你的應用程序將啓動並且活動將能夠訪問該URL作爲意圖數據的一部分。

+2

這是一個很好的答案。但是,當我使用此方法時,它還顯示設備上存在的所有瀏覽器的選項。有沒有辦法直接打開我的應用程序,而不是向用戶顯示不同的選項? – 2014-03-28 17:04:11

+0

當我添加這個不起作用。從應用程序列表中的應用程序圖標消失,並單擊電子郵件中的鏈接,而不是打開應用程序,它是在瀏覽器本身打開鏈接 – 2015-12-23 07:27:00

+0

與我相同:( – 2015-12-23 09:18:21

5

在通過@Adam給出答案此外,

有多個意圖過濾器可以在Android應用程序的情況下,我們必須使用兩個。一個用於應用啓動器,一個使用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> 

現在,在您的短信東西添加URL像

http://yourdomain.com/someurlparam 

這應該發動對URL點擊該應用,將增加android中的應用程序圖標也是如此。

+0

謝謝。這也適用於我使用自定義方案,它可以避免上面提到的有關所有br欠款開放。 – arlomedia 2016-02-04 16:49:01