我正在开发一个具有自己的URI前缀的应用程序.(dchub://在这种情况下)
搜遍了所有并阅读了很多,但我有点困惑.
当有人点击dchub://浏览器中的链接时,是否可以启动我的应用程序?
到目前为止,发现了很多的例子otherway各地从您的应用中打开浏览器,但是那不是我要找的.
非常感谢,我已经想到了,现在我有点陷入下一部分.
Uri data = getIntent().getData();
if (data.equals(null)) { } else {
String scheme = data.getScheme();
String host = data.getHost();
int port = data.getPort();
}
Run Code Online (Sandbox Code Playgroud)
nullpointerexception如果我正常启动应用程序,我会得到一些,如果我从网页打开它可以正常工作.所以我想包括一些检查nullvalue但是没有解决它.任何建议我如何才能通过选择它来启动应用程序?
Thi*_*Roy 26
要在Android应用程序中注册协议,请在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>
Run Code Online (Sandbox Code Playgroud)
Den*_*ger 10
不要使用data.equals(null).那肯定会失败,你不能在null对象上调用方法,因此就是NPE.
为什么emtpy代码块?在我看来,这更漂亮:
if(data != null){
// code here
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22936 次 |
| 最近记录: |