Add @RequiresNoPermission to IInputMethodManager#startProtoDump()
This is a follow up CL to our previous CL [1], which introduced
IInputMethodManager#startProtoDump()
so that IME client process can upload its own IME tracing dump data
to InputMethodManagerService.
One may notice that there is no permission / caller verification in
InputMethodManagerService#startProtoDump(),
but the absence of a permission check there is by design. We need
unprivileged app processes to be able to send that tracing data. To
make it clear in the AIDL file, this CL adds @RequiresNoPermission to
that IPC method.
The annotation is basically for errorprone check [2]. There should be
no observable behavior change at the run time.
[1]: Ia89f11d5ef8a220ea7746191b18769cea5a8359d
cf9e5123ce
[2]: I26a872f07ab13931c241cbb02ff7228edf7dc3b9
71463a4cb1
Bug: 204904070
Bug: 237316307
Test: presubmit
Change-Id: Ia41be32333a668cbf112ba7394bcca8c8ba7db6a
This commit is contained in:
@@ -105,7 +105,10 @@ interface IInputMethodManager {
|
||||
|
||||
/** Remove the IME surface. Requires passing the currently focused window. */
|
||||
oneway void removeImeSurfaceFromWindowAsync(in IBinder windowToken);
|
||||
|
||||
@JavaPassthrough(annotation="@android.annotation.RequiresNoPermission")
|
||||
void startProtoDump(in byte[] protoDump, int source, String where);
|
||||
|
||||
boolean isImeTraceEnabled();
|
||||
|
||||
// Starts an ime trace.
|
||||
|
||||
Reference in New Issue
Block a user