Невозможно проверить, использует ли приложение камеру через службу - PullRequest
0 голосов
/ 09 июня 2018

Я пытаюсь проверить, получает ли приложение доступ к камере (даже в фоновом режиме) в Android, и я использую для этого сервис.

Это мой сервисный код:

public class BackgroundService extends Service {
@Nullable
Context context;
public IBinder onBind(Intent intent) {
    return null;
}

@Override
public void onCreate() {
    Toast.makeText(this, "Service started!", Toast.LENGTH_LONG).show();
    if (isCameraUsedbyApp()){
    Toast.makeText(this, "Camera is used!", Toast.LENGTH_LONG).show();
    }
}

@Override
public void onDestroy() {
    Toast.makeText(this, "Service stopped!", Toast.LENGTH_LONG).show();
}

public boolean isCameraUsedbyApp() {
        Camera camera = null;
        try {
            camera = Camera.open();
        } catch (RuntimeException e) {
            return true;
        } finally {
            if (camera != null) camera.release();
        }
        return false;
    }
}

Я следил за ответами на эти вопросы:

Но безуспешно, на самом деле служба всегда говорит, что камера используется, даже если она не используется.

Кроме того, я пытаюсь получить приложение, которое использует камеру (если оно используется), но я не могу найти некоторые ссылки на это в документации для разработчиков Android ( официальное ).

Можете ли вы помочь мне?Если вам нужна дополнительная информация, вам нужно только спросить

С уважением,

F.

...