当前位置:网站首页>闹钟场景识别
闹钟场景识别
2022-04-23 10:53:00 【法迪】
闹钟场景识别
闹钟可以包含如下wakelock特征:
- 闹钟音乐分类
- flags为屏幕亮度相关
- tag包含音频类型
- 锁屏场景中存在亮屏时长与持锁(持音频或屏幕亮度特征的锁)时长的差值为2秒内的场景,可以判定为闹钟场景之一
1. 闹钟音乐分类
package_name category
com.caynax.hourlychime CLOCK
com.gau.go.launcherex.gowidget.clockwidget CLOCK
com.xmei.notify CLOCK
com.dadawh.alarm CLOCK
com.mdbs.emome.calendar CLOCK
com.kaoyancalendar CLOCK
com.calendar.example CLOCK
com.updrv.lifecalendar CLOCK
com.scliang.bqcalendar CLOCK
me.iweek.wannianli CLOCK
com.smartisan.calendar CLOCK
net.daum.android.solcalendar CLOCK
com.example.wannianli16 CLOCK
info.androidx.lovelycalenf CLOCK
com.lgl.calendar CLOCK
com.youloft.calendar.almanac CLOCK
com.crossmo.calendar CLOCK
com.yunxi.calendar CLOCK
jp.co.johospace.jorte CLOCK
com.android.wallcal CLOCK
com.exuan.ecalendar CLOCK
com.missu.girlscalendar CLOCK
cc.etouch.ecalendar CLOCK
com.anydo.cal CLOCK
com.bdj.calendar CLOCK
com.cloud.calendar CLOCK
com.gau.go.launcherex.gowidget.calendarwidget CLOCK
com.example.t CLOCK
com.womanlog CLOCK
com.tyzhzxl.hongbaozs CLOCK
com.donhoo.yical CLOCK
com.love.idiary CLOCK
com.pdswp.su.smartcalendar CLOCK
com.wapu.calendar.app CLOCK
com.buestc.wallet CLOCK
org.ifate CLOCK
com.period.tracker.lite CLOCK
com.belllife.praywheelclient CLOCK
net.android.wzdworks.magicday CLOCK
info.kfsoft.calendar CLOCK
gucdxj.apps.chineselunar CLOCK
com.changmi.calendar CLOCK
com.missu.plq CLOCK
jp.co.cybird.apps.lifestyle.cal CLOCK
com.ttrl.calendar CLOCK
com.haibin.calendarviewproject CLOCK
com.qingxing.eventcalendarpro CLOCK
com.gucdxj.trhrwehtr CLOCK
se.catharsis.android.calendar CLOCK
com.doudoubird.calendar CLOCK
com.haoxin.ri CLOCK
org.withouthat.acalendar CLOCK
com.xm.calendarxx CLOCK
com.android.qidian.calendar CLOCK
info.androidx.lovelyfcalenf CLOCK
com.ymnet.calendar CLOCK
me.iweek.fsofs CLOCK
com.swan.swan CLOCK
android.daniel.app.calendar CLOCK
cn.com.vxia.vxia CLOCK
com.shengliulaohuangli CLOCK
com.android.bclearservice CLOCK
com.jixiang.rili CLOCK
com.hdhd.wannianli CLOCK
com.jianzhi.calendar CLOCK
com.nfbazi.LiuyaoDuangua CLOCK
com.nfbazi.xuankong CLOCK
com.gyk.foli CLOCK
com.atnote.yearcalendar.activity CLOCK
com.cyberlabo.android.dball CLOCK
info.androidx.ladycalenf CLOCK
com.yunqi.calendar CLOCK
com.seccalqs.calendar CLOCK
info.androidx.memocalenf CLOCK
com.peterweissapps.adventcalendar CLOCK
com.jinks.memorandum.activity CLOCK
com.droid27.transparentclockweather CLOCK
com.shuwei.almanacui CLOCK
com.julangling.xsgjz CLOCK
com.xiaoyu.yfl CLOCK
agc.iClock CLOCK
com.alarmclock.xtreme CLOCK
rubberbigpepper.TranslucentClock CLOCK
com.tmsoft.ledclock CLOCK
com.alarmclockultra.free CLOCK
ru.org.amip.ClockSync CLOCK
com.nextdev.alarm CLOCK
ch.bitspin.timely CLOCK
com.chung.clock_nac191 CLOCK
in.vineetsirohi.customwidget CLOCK
factory.widgets.SenseClockDark CLOCK
com.sportstracklive.stopwatch CLOCK
org.ntpsync CLOCK
com.smartisan.clock CLOCK
com.wangxue123.android CLOCK
com.zesto.clockf CLOCK
com.maapiid.typoclock CLOCK
com.tsf.shell.widget.alarm CLOCK
com.th.android.widget.gTabsimiClock CLOCK
com.malangstudio.alarmmon CLOCK
com.pybeta.daymatter CLOCK
com.using.checktime CLOCK
org.coolcode.stopwatch CLOCK
factory.widgets.HeroNight CLOCK
com.pxlartificer.minu CLOCK
com.aob.android.cd CLOCK
com.th.android.widget.SiMiClock CLOCK
com.tomatodo CLOCK
com.gtp.nextlauncher.widget.worldclockwidget CLOCK
com.drandxq.desktopclock CLOCK
com.geekyouup.android.ustopwatch CLOCK
com.ntsoft.android.flashlightclock CLOCK
com.eri.widget.binaryclock CLOCK
wan.util.barclock CLOCK
com.andronicus.ledclock CLOCK
nl.tvoverbeek.taiclock CLOCK
com.why.project.watchwidget CLOCK
com.runtastic.android.sleepbetter.lite CLOCK
com.buykee.beautyclock CLOCK
com.splunchy.android.alarmclock CLOCK
kuba.livewall.astroclock CLOCK
com.glgjing.baymax CLOCK
com.clockliveart.clockwithseconds CLOCK
wan.pclock CLOCK
com.androbeings.glowing.clock.locker.blue.free CLOCK
com.bojankogoj.giantclock CLOCK
com.lixiangdong.LCDWatch.Pro CLOCK
com.Night.Digital.ClockNewLWE CLOCK
upper.duper.widget.weather CLOCK
yco.dclock CLOCK
com.the7art.waterclock CLOCK
cn.menue.nightclock CLOCK
net.imoya.android.voiceclock.k CLOCK
com.uniqlo.wakeup CLOCK
com.alarmclock.xtreme.free CLOCK
com.droid27.d3flipclockweather CLOCK
com.timerqssmart.clock CLOCK
com.stockholm.meow CLOCK
c.widget.clock.normal CLOCK
com.david.deskclock CLOCK
com.style_7.digitalclocklivewallpaper_7 CLOCK
com.willy.moonberg.read.a.clock CLOCK
jp.co.REIRI.tokeinokeisan CLOCK
com.vm.android.clockwork.black2.lite CLOCK
umi.clock CLOCK
webrecord.ch.ptc CLOCK
com.suncammi4.live CLOCK
com.manzy.flashnotification CLOCK
com.csym.sleepdetector CLOCK
com.mengmeng.clock CLOCK
com.shwnl.calendar CLOCK
nl.jsource.retroclock.android CLOCK
com.bti.soundMeter CLOCK
com.android.deskclock CLOCK
2. flags为屏幕亮度相关
/**
* PARTIAL_WAKE_LOCK = 0x00000001
* SCREEN_DIM_WAKE_LOCK = 0x00000006
* SCREEN_BRIGHT_WAKE_LOCK = 0x0000000a
* FULL_WAKE_LOCK = 0x0000001a
* PROXIMITY_SCREEN_OFF_WAKE_LOCK = 0x00000020
* DOZE_WAKE_LOCK = 0x00000040
* DRAW_WAKE_LOCK = 0x00000080
* ACQUIRE_CAUSES_WAKEUP = 0x10000000
* ON_AFTER_RELEASE = 0x20000000
*/
private boolean isWindowBrightFlag(int flag) {
if(0x2000000A == flag || 0x3000001A == flag || 0x10000001 == flag || 0x1000001A == flag || 0x1000000A == flag || 0x1000001 == flag) {
return true;
} else {
return false;
}
}
3. tag包含音频类型
/**
* 处理Audio的持锁事件
*/
private void handleAudioWakeLockAcquired(int flags, String tag, int uid, int pid) {
HashMap hashMap;
if ("AudioMix".equals(tag)) {
hashMap = mActiveAudioMixWL;
synchronized (hashMap) {
mActiveAudioMixWL.put(uid, pid);
}
} else if ("AudioIn".equals(tag)) {
hashMap = mActiveAudioInWL;
synchronized (hashMap) {
mActiveAudioInWL.put(uid, pid);
}
}
}
4. 锁屏场景下持锁与亮屏的关系
锁屏场景中存在亮屏时长与持锁(持音频或屏幕亮度特征的锁)时长的差值为2秒内的场景,可以判定为闹钟场景之一
private void clockAppIdentify() {
if (Math.max(Math.max(mWbFlagTime, mAoTagTime), mScrOnTime) - Math.min(Math.min(mWbFlagTime, mAoTagTime), mScrOnTime) < 2000
&& mIDeviceState.isKeyguardPresent()) {
ArrayList<String> pkgList = mIAppManager.getPkgNameByUid(mContext, mUid);
ArrayList<String> pkgScreenLockList = null;
String frontPkg = mIScenario.getFrontPkg();
if (frontPkg == null || !frontPkg.equals(mFrontPkgWhenScreenOff)) {
for (String pkgName : pkgList) {
for (String skipPkg : mFilterNotClocks) {
if (pkgName != null && pkgName.startsWith(skipPkg)) {
Log.i("DeviceMonitor", "not clock app:" + pkgName);
return;
}
}
if (pkgName == null || frontPkg == null || pkgName.startsWith(frontPkg)) {
if (pkgScreenLockList == null) {
pkgScreenLockList = mIAppType.getAppsByType(9);
}
if (pkgScreenLockList != null && pkgScreenLockList.contains(pkgName)) {
Log.i("DeviceMonitor", "not clock app, it is screen lock:" + pkgName);
mFilterNotClocks.add(pkgName);
} else if (mIAppType.getAppType(pkgName) == 11) {
Log.i("DeviceMonitor", "not clock app, it is im app:" + pkgName);
mFilterNotClocks.add(pkgName);
} else {
int appType = mIAppType.getAppType(pkgName);
if (appType != -1) {
Log.i("DeviceMonitor", pkgName + " not unknown app,it has been set type as:" + appType);
} else {
Message msg = mHandler.obtainMessage(200);
msg.obj = pkgName;
mHandler.sendMessageDelayed(msg, 3000);
}
}
}
}
}
}
}
}
版权声明
本文为[法迪]所创,转载请带上原文链接,感谢
https://blog.csdn.net/su749520/article/details/124355986
边栏推荐
- Can Jerry's AES 256bit [chapter]
- Notes on concurrent programming of vegetables (IX) asynchronous IO to realize concurrent crawler acceleration
- 精彩回顾|「源」来如此 第六期 - 开源经济与产业投资
- 第六站神京门户-------手机号码的转换
- Construction and traversal of binary tree
- 得到知识服务app原型设计比较与实践
- Pycharm
- SQLServer 查询数据库死锁
- Ueditor -- limitation of 4m size of image upload component
- Comparison and practice of prototype design of knowledge service app
猜你喜欢

Cve-2019-0708 vulnerability exploitation of secondary vocational network security 2022 national competition

Idea - indexing or scanning files to index every time you start

Introduction to data analysis 𞓜 kaggle Titanic mission (IV) - > data cleaning and feature processing

SQL Server recursive query of superior and subordinate

Comparison and practice of prototype design of knowledge service app

GO接口使用

Learning note 5 - gradient explosion and gradient disappearance (k-fold cross verification)

Let the LAN group use the remote device

JVM - common parameters

/etc/shadow可以破解吗?
随机推荐
Xshell+Xftp 下载安装步骤
《Neo4j权威指南》简介,求伯君、周鸿袆、胡晓峰、周涛等大咖隆重推荐
Introduction to data analysis 𞓜 kaggle Titanic mission (IV) - > data cleaning and feature processing
What are the system events of Jerry's [chapter]
Manjaro installation and configuration (vscode, wechat, beautification, input method)
/etc/shadow可以破解吗?
Construction and traversal of binary tree
Source insight 4.0 FAQs
The courses bought at a high price are open! PHPer data sharing
主流手机分辨率与尺寸
Is the pointer symbol of C language close to variable type or variable name?
CentOS/Linux安装MySQL
SQL Server 游标循环表数据
Hikvision face to face summary
VIM + ctags + cscope development environment construction guide
202. Happy number
MySQL common statements
997. Square of ordered array (array)
HuggingFace
RESTful和SOAP的区别