如果有人能帮我开发一个我正在开发的Android应用程序,我会很高兴的。实际上,在应用程序中有一个模块,可以统计我使用了多少次不同的服务,如gps,wifi,相机等。
所以我被相机功能卡住了,如何记录whatsapp,instagram等第三方应用程序使用相机的情况。我在画廊上尝试了广播接收器,在媒体上尝试了内容观察者,还尝试了文件管理器。
那么该怎么做呢?
发布于 2018-05-16 06:59:51
您可以使用Accessibility Service来检测每次摄像头是否在使用中。
记得添加权限:<uses-permission android:name="android.permission.BIND_ACCESSIBILITY_SERVICE" />
import android.app.Activity
import android.content.Context
import android.hardware.camera2.CameraManager
import android.hardware.camera2.CameraManager.AvailabilityCallback
import android.os.Handler
class YourClassActivity : Activity() {
private lateinit var callback: AvailabilityCallback
private lateinit var manager: CameraManager
public override fun onResume() {
super.onResume()
manager = getSystemService(Context.CAMERA_SERVICE) as CameraManager
callback = object : AvailabilityCallback() {
override fun onCameraAvailable(cameraId: String) {
super.onCameraAvailable(cameraId)
//Do something
}
override fun onCameraUnavailable(cameraId: String) {
super.onCameraUnavailable(cameraId)
//The camera is not available
}
}
manager.registerAvailabilityCallback(callback, Handler())
}
public override fun onPause() {
//Unsubscribe listener
manager.unregisterAvailabilityCallback(callback)
super.onPause()
}
}https://stackoverflow.com/questions/50291306
复制相似问题