当用户在系统中通过 Facebook Messenger
获取 chatHeads
或(浮动图像)时 . 我得到浮动图像的点击事件 . 但我的问题是当我点击 chatHeads
或(浮动图像)并调用一个活动,然后正确调用活动,但在上面的活动上调用 chatHeads
或(浮动图像) . 我希望隐藏 chatHeads
或(浮动图像)隐藏在Android中的自定义Activity上 .
public class MyAccessibilityService extends AccessibilityService
{
@Override
public void onAccessibilityEvent(AccessibilityEvent event)
{
if(getEventType(event).equalsIgnoreCase("default"))
{
Toast.makeText(getApplicationContext(), "Shubbham_test"+ event.getEventType(), Toast.LENGTH_LONG);
Intent i = new Intent(getApplicationContext(),LoginScreen.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
i.putExtra(SMLockService.SERVICE_OPCODE,SMLockService.MSG_SERVICE_OPCODE);
getApplicationContext().startActivity(i);
}
}
@Override
public void onInterrupt()
{
// TODO Auto-generated method stub
Toast.makeText(getApplicationContext(), "Shubbham_test"+ "onInterrupt", Toast.LENGTH_LONG).show();;
}
@Override
public void onServiceConnected()
{
AccessibilityServiceInfo info = new AccessibilityServiceInfo();
info.eventTypes = AccessibilityEvent.TYPES_ALL_MASK;
info.packageNames = new String[]{"com.facebook.katana", "com.facebook.orca"};
info.notificationTimeout = 100;
info.feedbackType = AccessibilityServiceInfo.FEEDBACK_SPOKEN;
setServiceInfo(info);
}
public String getEventType(AccessibilityEvent event) {
switch (event.getEventType()) {
case AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED:
return "TYPE_NOTIFICATION_STATE_CHANGED";
case AccessibilityEvent.TYPE_VIEW_CLICKED:
return "TYPE_VIEW_CLICKED";
case AccessibilityEvent.TYPE_VIEW_FOCUSED:
return "TYPE_VIEW_FOCUSED";
case AccessibilityEvent.TYPE_VIEW_LONG_CLICKED:
return "TYPE_VIEW_LONG_CLICKED";
case AccessibilityEvent.TYPE_VIEW_SELECTED:
return "TYPE_VIEW_SELECTED";
case AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED:
return "TYPE_WINDOW_STATE_CHANGED";
case AccessibilityEvent.TYPE_VIEW_TEXT_CHANGED:
return "TYPE_VIEW_TEXT_CHANGED";
}
return "default";
}
public String getEventText(AccessibilityEvent event) {
StringBuilder sb = new StringBuilder();
for (CharSequence s : event.getText()) {
sb.append(s);
}
return sb.toString();
}
}
1 回答
您可以在启动活动后单击回调中的视图中的浮动图像,也可以只删除setVisibility(GONE) .