通常有兩種服務涉及實現Android身份驗證器 - 身份驗證服務返回身份驗證器,以及提供同步適配器的同步服務。這個問題是專門關於身份驗證服務,雖然在most examples兩個服務給出android:exported="true"
屬性在AndroidManifest.xml
,如:對於認證服務來說,android:exported =「true」真的是必需的嗎?
<service
android:name=".authenticator.AuthenticationService"
android:exported="true">
<intent-filter>
<action
android:name="android.accounts.AccountAuthenticator" />
</intent-filter>
<meta-data
android:name="android.accounts.AccountAuthenticator"
android:resource="@xml/authenticator" />
</service>
除去身份驗證服務的屬性,似乎沒有任何效果(測試升級Froyo,薑餅) - 認證代碼繼續工作很好 - 標誌實際上是必要的嗎?
由於Android 4.2,android:exported的默認值現在是false。 – 2016-09-30 06:24:08
你能鏈接到一些文件,顯示?與上面鏈接的Android文檔仍然說:'...另一方面,至少存在一個過濾器意味着該服務旨在供外部使用,因此默認值爲「true」。 – 2016-09-30 10:47:46
我看到這個文檔:https://developer.android.com/about/versions/android-4.2.html - 它說'內容提供者不再默認導出。' - 但只涉及內容提供者,而不是服務,我認爲? – 2016-09-30 10:49:35