服务启动的意图过滤器
Intent-filter for service start
我想启动一个服务,这个服务基本上就是windowmanager上的一个videoview。我什至想从其他应用程序启动此 videoview 服务。
这是我的代码意图过滤器,不知道我哪里出错了。
<service android:name=".VideoWindow">
<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:mimeType="video/*" />
<data android:mimeType="application/x-quicktimeplayer*" />
<data android:mimeType="application/x-mpeg" />
<data android:mimeType="application/vnd.dvd*" />
<data android:mimeType="application/vnd.3gp*" />
<data android:mimeType="application/3gpp*" />
<data android:mimeType="application/vnd.rn-realmedia*" />
<data android:mimeType="application/mp4*" />
<data android:mimeType="application/mpeg*" />
<data android:mimeType="application/sdp" />
<data android:mimeType="application/vnd.wap.mms-message"/>
</intent-filter>
</service>
I want to start this videoview service even from other applications
除非您是编写其他应用程序的人,或者您雇人编写其他应用程序,否则其他应用程序不会启动您的服务。
根据您的 <intent-filter>
,我的猜测是您认为如果另一个应用程序在 ACTION_VIEW
Intent
上调用 startActivity()
,这将启动您的服务。这是不正确的。 startActivity()
开始 activity。它不会启动服务,无论该服务有什么<intent-filter>
。
我想启动一个服务,这个服务基本上就是windowmanager上的一个videoview。我什至想从其他应用程序启动此 videoview 服务。 这是我的代码意图过滤器,不知道我哪里出错了。
<service android:name=".VideoWindow">
<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:mimeType="video/*" />
<data android:mimeType="application/x-quicktimeplayer*" />
<data android:mimeType="application/x-mpeg" />
<data android:mimeType="application/vnd.dvd*" />
<data android:mimeType="application/vnd.3gp*" />
<data android:mimeType="application/3gpp*" />
<data android:mimeType="application/vnd.rn-realmedia*" />
<data android:mimeType="application/mp4*" />
<data android:mimeType="application/mpeg*" />
<data android:mimeType="application/sdp" />
<data android:mimeType="application/vnd.wap.mms-message"/>
</intent-filter>
</service>
I want to start this videoview service even from other applications
除非您是编写其他应用程序的人,或者您雇人编写其他应用程序,否则其他应用程序不会启动您的服务。
根据您的 <intent-filter>
,我的猜测是您认为如果另一个应用程序在 ACTION_VIEW
Intent
上调用 startActivity()
,这将启动您的服务。这是不正确的。 startActivity()
开始 activity。它不会启动服务,无论该服务有什么<intent-filter>
。