ho studiato attraverso la maggior parte del URL personalizzato schema Q & A e non ho ancora trovato la mia risposta possibile.Android come creare schema URL personalizzata con il dato formato myapp: // http: //
Voglio che la mia app venga avviata facendo clic su un determinato URL nel browser (qualsiasi sul dispositivo mobile), il fatto è che il mio URL non può essere modificato poiché serve anche l'app IOS e sembra che questo:
"myapp: // http://www.name.com/path/path2/"
non sono sicuro di come gestire "myapp: // http: //" e costruire un filtro intento corretta, e tutto ciò che ho provato non funziona. Qualsiasi aiuto sarà apprezzato, e se ho perso una risposta pertinente per favore tranne le mie scuse.
Questo è ciò che ho provato finora:
<activity
android:name="com.myapp.test.SplashScreen"
android:exported="true"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<!-- Test for URL scheme -->
<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:host="www.name.com"
android:path="/path/path2/"
android:scheme="http" />
<data
android:host="www.name.com"
android:path="/path/path2/"
android:scheme="https" />
<data android:scheme="myapp" />
</intent-filter>
<!-- End Test for URL scheme -->
</activity>
Nota: Ho provato con/senza la esportato: vero
Dal momento che non è una 'struttura Uri' valida, dubito fortemente che funzionerà. Sarà più semplice per te cambiare la tua app per iOS per utilizzare qualcosa che sia un URI valido. – CommonsWare
@CommonsWare Ehi, grazie per il commento. Questo tipo di URI funziona sull'app IOS, riescono ad aprire l'app facendo clic su questo link. Pensi che ci possa essere solo uno schema come "myapp: //" OR "http: //"? – EviatarS
"Pensi che ci possa essere solo uno schema come" myapp: // "OR" http: // "?" -- sì. Nel migliore dei casi, se sei fortunato, 'http: //' verrebbe trattato come l'host. Nel peggiore dei casi, il tuo 'Uri' semplicemente fallirà nell'analisi. E posso pensare ad alcune altre opzioni. C'è assolutamente solo uno schema in un 'Uri' - la classe' Uri' non ne consente più di uno. – CommonsWare