Make TCS.getDefaultTextClassifierImplementation returns a ...
SystemTextClassifier that is backed by ExtServices 1. The default textclassifier is always provided by config_servicesExtensionPackage (i.e. ExtServices) 2. OEM can specify a system text classifier by specifying config_defaultTextClassifierPackage. 3. System text classifiers can get an instance of the default textclassifier by calling TCS.getDefaultTextClassifierImplementation(), so that they can add their customization on top of the default TCS. 4. If config_systemTextClassifierPackage is set, the specified package is used to process requests from apps and the platform. Otherwise, the default textclassifier is used. 5. For testing and droidfooding purpose, text classifier service package can be overridden. If the overridden package is neither the default one nor the system one, the package is considered as a untrusted text classifier, which can only see requests from itself. Test: m mts && mts-tradefed run mts-extservices Test: Not setting config_defaultTextClassifierPackage. Select some text and make sure smart selection works. Run dumpsys textclassification to make sure the default TCS is bound. Test: Setting config_defaultTextClassifierPackage and repeat the above. Make sure the specified OEM text classifier is used. Test: Set the service override config to be ExtServices. Run dumpsys textclassification to make sure everything is unbound. Select some text and make sure ExtServices is bound. Test: Set the service override to be AiAi and repeat the above. Test: Set the service to be something invalid and repeat the above. Observe that no TC is bound and fallback to NO_OP. BUG: 148049185 Change-Id: Ia2fb549fda49363e0d0ebc4b7e0d31cb76e11ee0 Make TCS.getDefaultTextClassifierImplementation returns a ... SystemTextClassifier that is backed by ExtServices 1. The default textclassifier is always provided by config_servicesExtensionPackage (i.e. ExtServices) 2. OEM can specify a system text classifier by specifying config_defaultTextClassifierPackage. 3. System text classifiers can get an instance of the default textclassifier by calling TCS.getDefaultTextClassifierImplementation(), so that they can add their customization on top of the default TCS. 4. If config_systemTextClassifierPackage is set, the specified package is used to process requests from apps and the platform. Otherwise, the default textclassifier is used. 5. For testing and droidfooding purpose, text classifier service package can be overridden. If the overridden package is neither the default one nor the system one, the package is considered as a untrusted text classifier, which can only see requests from itself. Test: m mts && mts-tradefed run mts-extservices Test: Not setting config_defaultTextClassifierPackage. Select some text and make sure smart selection works. Run dumpsys textclassification to make sure the default TCS is bound. Test: Setting config_defaultTextClassifierPackage and repeat the above. Make sure the specified OEM text classifier is used. Test: Set the service override config to be ExtServices. Run dumpsys textclassification to make sure everything is unbound. Select some text and make sure ExtServices is bound. Test: Set the service override to be AiAi and repeat the above. Test: Set the service to be something invalid and repeat the above. Observe that no TC is bound and fallback to NO_OP. BUG: 148049185 Change-Id: Ia2fb549fda49363e0d0ebc4b7e0d31cb76e11ee0
Loading
Please register or sign in to comment