My app's service starts activity in LockScreen(android:showOnLockScreen="true" option in Manifests.xml).
The LockScreen activity sets onTouch listener.
In onTouch, it calls finish() to close activity
This finish() function incurs warning message 'requires android.permission.INTERACT_ACROSS_USERS'
How to solve it?
Following is Manifests.xml
<service android:name=".LockScreenService" />
<activity android:name=".LockScreenActivity"
android:showOnLockScreen="true"
android:launchMode="singleInstance"
android:theme="@style/AppThemeNoAction">
</activity>
Following is Lockscreen activity onTouch Source
@Override
public boolean onTouch(View v, MotionEvent event) {
finish()
}
Following is warning log
W/System.err: java.lang.SecurityException: Permission Denial: getCurrentUser() from pid=20053, uid=10216 requires android.permission.INTERACT_ACROSS_USERS
W/System.err: at android.os.Parcel.readException(Parcel.java:1958)
W/System.err: at android.os.Parcel.readException(Parcel.java:1904)
W/System.err: at android.sec.clipboard.IClipboardService$Stub$Proxy.isEnabled(IClipboardService.java:757)
W/System.err: at com.example.android.content.clipboard.SemClipboardManager.isEnabled(SemClipboardManager.java:1008)
W/System.err: at android.widget.TextView.getSecClipboardEnabled(TextView.java:16133)
W/System.err: at android.widget.TextView.onDetachedFromWindowInternal(TextView.java:7178)
W/System.err: at android.view.View.dispatchDetachedFromWindow(View.java:18645)
W/System.err: at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:3878)
I/chatty: uid=10216(u0_a216) com.example.lockscreen identical 4 lines
W/System.err: at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:3878)
W/System.err: at android.view.ViewRootImpl.dispatchDetachedFromWindow(ViewRootImpl.java:4001)
W/System.err: at android.view.ViewRootImpl.doDie(ViewRootImpl.java:7267)
W/System.err: at android.view.ViewRootImpl.die(ViewRootImpl.java:7244)
W/System.err: at android.view.WindowManagerGlobal.removeViewLocked(WindowManagerGlobal.java:483)
W/System.err: at android.view.WindowManagerGlobal.removeView(WindowManagerGlobal.java:421)
W/System.err: at android.view.WindowManagerImpl.removeViewImmediate(WindowManagerImpl.java:131)
W/System.err: at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:4643)
W/System.err: at android.app.ActivityThread.-wrap5(Unknown Source:0)
W/System.err: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1757)
W/System.err: at android.os.Handler.dispatchMessage(Handler.java:105)
W/System.err: at android.os.Looper.loop(Looper.java:164)
W/System.err: at android.app.ActivityThread.main(ActivityThread.java:6938)
06-19 10:30:50.615 20053-20053/com.example.lockscreen W/System.err: at java.lang.reflect.Method.invoke(Native Method)
W/System.err: at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
W/System.err: java.lang.SecurityException: Permission Denial: getCurrentUser() from pid=20053, uid=10216 requires android.permission.INTERACT_ACROSS_USERS
W/System.err: at android.os.Parcel.readException(Parcel.java:1958)
W/System.err: at android.os.Parcel.readException(Parcel.java:1904)
W/System.err: at android.sec.clipboard.IClipboardService$Stub$Proxy.isEnabled(IClipboardService.java:757)
W/System.err: at com.example.android.content.clipboard.SemClipboardManager.isEnabled(SemClipboardManager.java:1008)
W/System.err: at android.widget.TextView.getSecClipboardEnabled(TextView.java:16133)
W/System.err: at android.widget.TextView.onDetachedFromWindowInternal(TextView.java:7178)
W/System.err: at android.view.View.dispatchDetachedFromWindow(View.java:18645)
W/System.err: at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:3878)
I/chatty: uid=10216(u0_a216) com.example.lockscreen identical 4 lines
W/System.err: at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:3878)
W/System.err: at android.view.ViewRootImpl.dispatchDetachedFromWindow(ViewRootImpl.java:4001)
W/System.err: at android.view.ViewRootImpl.doDie(ViewRootImpl.java:7267)
W/System.err: at android.view.ViewRootImpl.die(ViewRootImpl.java:7244)
W/System.err: at android.view.WindowManagerGlobal.removeViewLocked(WindowManagerGlobal.java:483)
W/System.err: at android.view.WindowManagerGlobal.removeView(WindowManagerGlobal.java:421)
W/System.err: at android.view.WindowManagerImpl.removeViewImmediate(WindowManagerImpl.java:131)
W/System.err: at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:4643)
W/System.err: at android.app.ActivityThread.-wrap5(Unknown Source:0)
W/System.err: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1757)
W/System.err: at android.os.Handler.dispatchMessage(Handler.java:105)
W/System.err: at android.os.Looper.loop(Looper.java:164)
W/System.err: at android.app.ActivityThread.main(ActivityThread.java:6938)
06-19 10:30:50.617 20053-20053/com.example.lockscreen W/System.err: at java.lang.reflect.Method.invoke(Native Method)
W/System.err: at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
D/ViewRootImpl@bee7239[LockScreenActivity]: dispatchDetachedFromWindow
D/InputEventReceiver: channel '7c33270 com.example.lockscreen/com.example.lockscreen.LockScreenActivity (client)' ~ Disposing input event receiver.
D/InputEventReceiver: channel '7c33270 com.example.lockscreen/com.example.lockscreen.LockScreenActivity (client)' ~NativeInputEventReceiver.