2010-06-21 9 views

risposta

2

No, l'unico URL riconosciuti sono:

  • URL Web.
  • Indirizzi email.
  • Numeri di telefono.
  • Indirizzi mappa.

da TextView's android:autoLink attributo XML.

+0

come eseguire l'applicazione, poiché il set di URL proverà ad aprire il browser in, voglio avviare il file apk facendo clic sul collegamento specifico, che viene inviato da un altro dispositivo ... –

39

La risposta precedente non era corretta.

È possibile aggiungere un filtro intent per un'attività che "registrerà" l'app per gestire i collegamenti ipertestuali all'interno del corpo del messaggio.

Per esempio, se si aggiunge il seguente intento al 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> 

E si invia un messaggio SMS con il seguente nel corpo:

http://test.com/myapp/somedata 

L'applicazione lancerà e l'attività sarà in grado di accedere all'URL come parte dei dati di intenti.

+2

Questa è una buona risposta. Tuttavia, quando utilizzo questo metodo, mostra anche un'opzione di tutti i browser presenti sul dispositivo. C'è un modo per aprire la mia app direttamente invece di mostrare all'utente con diverse opzioni? –

+0

quando aggiungo questo non ha funzionato. L'icona dell'app dall'elenco delle app scompare e fai clic sul collegamento nell'e-mail non aprendo l'app in tutto il link di apertura nel browser stesso –

+0

stesso con me :( –

5

Inoltre risposta data da @ Adamo,

C'è multipla filtro intento possibile in caso di applicazione android, Dobbiamo usare due. Uno per Avvio applicazioni e uno per l'applicazione di lancio utilizzando l'URL in SMS

<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> 

Ora aggiungere un URL nella tua sms qualcosa come

http://yourdomain.com/someurlparam 

Questo dovrebbe lanciare l'applicazione sul URL click e aggiungerà un'icona di app in Android pure.

+0

Grazie. Anche questo ha funzionato per me utilizzando uno schema personalizzato, che evita il problema di cui sopra su un elenco di tutti i apertura delle autorità – arlomedia