我想使用URI方案启动Android服务。这可能吗?
目前我有以下内容:
<service android:name="com.domain.app.services.MyService" >
<intent-filter>
<data android:scheme="myapp1"/>
</intent-filter>
</service>
<receiver android:name="com.domain.app.receivers.MyReceiver" >
<intent-filter>
<data android:scheme="myapp2"/>
</intent-filter>
</receiver>
但是当我尝试使用浏览器编写cusom URI方案( myapp1:// hello 或 myapp2:// hello )时,启动它们。
有人知道怎么做吗?
答案 0 :(得分:0)
我认为您必须使用intent-filer
with scheme来从浏览器启动应用程序。您可以阅读this tutorial以获取有关清单文件中的实现的更多信息。或this answer。
示例代码:
<intent-filter>
<data android:scheme="myapp1" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
</intent-filter>
广播接收器(短接收器)是一个Android组件,允许您注册系统或应用程序事件。一旦发生此事件,Android运行时将通知事件的所有已注册接收者。
因此广播接收器用于系统或应用程序事件,而不是您从浏览器启动应用程序。有关Android中广播接收器的更多信息,请阅读this tutorial。