Je travaille sur une application qui a son propre préfixe URI. (DCHUB: // Dans ce cas)
Recherche beaucoup et lire beaucoup, mais j'ai un peu confus. p>
est-il possible de démarrer mon application lorsque quelqu'un clique sur un lien commençant par jusqu'à présent trouvé beaucoup d'exemples l'inverse autour de l'ouverture du navigateur de votre application mais ce n'est pas ce que je cherche. P > Merci beaucoup, j'ai pensé que, maintenant je suis un peu coincé dans la partie suivante. p> i Vous avez un DCHUB: // code> dans le navigateur? p>
Mettre à jour h2>
nullpointexception code> S Si je démarre l'application Normalement, cela fonctionne bien si j'ouvre de la page Web. Donc, j'ai pensé que desservent certaines vérifications de NullValue, mais cela ne le résolvez pas. Toute suggestion comment je peux démarrer l'application juste en le sélectionnant? p> p>
3 Réponses :
Pour enregistrer un protocole dans votre application Android, ajoutez un bloc supplémentaire à l'androidmanifest.xml.
<manifest> <application> <activity> <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:scheme="dchub"/> </intent-filter> </activity> </application> </manifest>
Merci beaucoup, j'ai pensé que, maintenant je suis un peu coincé dans la partie suivante. [Code] Data URI = getintent (). getdata (); Si (data.equals (null)) {} else {String Scheme = data.getscheme (); String Host = Data.Gethost (); int port = data.geport (); } [/ CODE] J'ai obtenu certaines nullpointerExceptions si je démarre l'application normalement, cela fonctionne bien si j'ouvre de la page Web. Donc, j'ai pensé que desservent certaines vérifications de NullValue, mais cela ne le résolvez pas. Toute suggestion comment je peux commencer l'application juste en le sélectionnant? // désolé pour la mauvaise mise en forme, le manuel ne l'aide pas à dire que quatre espaces, ont-ils été resvusé aucun changement: s
Si les données sont NULL "Data.equals (NULL)" provoquera une exception NullPoinger ... Vérifiez si (DATA == NULL)
Essayez ce code:
try { Uri data = getIntent().getData(); if (data.equals(null)) { } else { String scheme = data.getScheme(); String host = data.getHost(); int port = data.getPort(); //type what u want tv.setText("any thing"); } } catch (NullPointerException e) { // TODO: handle exception tv.setText("Null"); }
n'utilisez pas de données.equals (null). Cela est lié à l'échec, vous ne pouvez pas appeler des méthodes sur un objet NULL, d'où la NPE.
Pourquoi le bloc de code EMTPY? Dans mon esprit, c'est beaucoup plus jolie: p>
Stackoverflow.com/questions/3469908/... vient de trouver cette réponse, va essayer si cela fonctionne.
Bonne question, mais veuillez poser des questions supplémentaires comme des questions distinctes, pas comme une mise à jour de votre question originale ...