无法检查应用是否通过服务使用相机

时间:2018-06-09 15:49:44

标签: java android service camera

我试图检查某个应用是否正在访问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开发人员文档(official one)中找不到对此的引用。

你能帮帮我吗?如果您需要进一步的信息,您只需要询问

此致

F。

0 个答案:

没有答案