Thường có hai dịch vụ liên quan đến việc triển khai trình xác thực Android - dịch vụ xác thực để trả về trình xác thực và dịch vụ Đồng bộ hóa cung cấp bộ điều hợp đồng bộ hóa. Câu hỏi này là cụ thể về các dịch vụ xác thực, mặc dù trong most examplescả dịch vụ được cung cấp thuộc tính android:exported="true"
trong AndroidManifest.xml
, ví dụ:Android: export = "true" có thực sự cần thiết cho dịch vụ xác thực không?
<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>
Loại bỏ các thuộc tính từ các dịch vụ xác thực dường như không có hiệu lực thi hành (thử nghiệm Froyo, Gingerbread) - mã auth tiếp tục hoạt động tốt - vậy lá cờ có thực sự cần thiết không?
Kể từ Android 4.2, Giá trị mặc định của android: đã xuất hiện không đúng. –
Bạn có thể liên kết với một số tài liệu cho thấy điều đó không? Tài liệu Android được liên kết ở trên vẫn nói: '... Mặt khác, sự hiện diện của ít nhất một bộ lọc ngụ ý rằng dịch vụ được thiết kế để sử dụng bên ngoài, vì vậy giá trị mặc định là "true". –
Tôi thấy tài liệu này: https://developer.android.com/about/versions/android-4.2.html - có nội dung 'Nhà cung cấp nội dung không còn được xuất theo mặc định'. - nhưng điều đó chỉ liên quan đến nhà cung cấp Nội dung chứ không phải Dịch vụ, tôi nghĩ vậy? –