Определить, является ли приложение Game или нет Android - PullRequest
0 голосов
/ 12 июня 2018

У меня есть AccessibilityService в моем приложении.Когда приложение выходит на передний план, я пытаюсь определить его и его тип.В общем, если приложение - игра, я сделаю несколько сотрудников базы данных.Но я не могу определить, является ли запущенное приложение игрой или нет.

Код моей службы:

@Override
    public void onAccessibilityEvent(AccessibilityEvent event) {
        if (event.getEventType() == AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED) {
            if (event.getPackageName() != null && event.getClassName() != null) {
                ComponentName componentName = new ComponentName(
                        event.getPackageName().toString(),
                        event.getClassName().toString()
                );

                ActivityInfo activityInfo = tryGetActivity(componentName);
                boolean isActivity = activityInfo != null;
                if (isActivity) {

                    if ((activityInfo.flags & ApplicationInfo.FLAG_SYSTEM) != 0) {
                        Log.i(TAG, "system");
                    } else {




                        // For Opening
                        if ((activityInfo.flags & ApplicationInfo.FLAG_IS_GAME) == ApplicationInfo.FLAG_IS_GAME) {
                            Log.v(TAG, "Playing games");
                            AppInfo.updateAppInfo(componentName.getPackageName(), new Date(), true, Utlis.AppType.GAME);
                        } 


                    }

                }
            }
        }
    }

    private ActivityInfo tryGetActivity(ComponentName componentName) {
        try {
            return getPackageManager().getActivityInfo(componentName, 0);
        } catch (PackageManager.NameNotFoundException e) {
            return null;
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...