场景识别-音频场景

场景识别-音频场景,第1张

目的

避免管控正在使用音频的场景、同时定义黑名单音频使用APP列表

是否正在播放音乐

frameworks/base/services/core/java/com/android/server/audio/PlaybackActivityMonitor.java

PlaybackActivityMonitor 进行playerEvent和releasePlayer事件进行埋点

    /**
     * Update player event
     * @param piid Player id to update
     * @param event The new player event
     * @param deviceId The new player device id
     * @param binderUid Calling binder uid
     */
    public void playerEvent(int piid, int event, int deviceId, int binderUid) {
            sEventLogger.log(new PlayerEvent(piid, event, deviceId));
            FadiReportEvent(binderUid,event + "|" + piid + "|" + apc.getClientPid() + "|" + binderUid);
            if (event == AudioPlaybackConfiguration.PLAYER_STATE_STARTED) {
    }

    public void releasePlayer(int piid, int binderUid) {
            final AudioPlaybackConfiguration apc = mPlayers.get(new Integer(piid));
            if (checkConfigurationCaller(piid, apc, binderUid)) {
                FADIReportEvent(binderUid,AudioPlaybackConfiguration.PLAYER_STATE_RELEASED + "|" + piid + "|" + apc.getClientPid() + "|" + binderUid);
    }

    private int mSystemUIUid;
    private void FADIReportEvent(int uid,String msg){
        if(FADI.scene.WaterManager.ENABLE){
            if(mSystemUIUid == 0){
                try {
                    mSystemUIUid = mContext.getPackageManager().getPackageUid("com.android.systemui",0);
                }catch (Exception e){
                    mSystemUIUid = -1;
                }
            }
            if(uid < android.os.Process.FIRST_APPLICATION_UID || uid == mSystemUIUid) return;
            FADI.scene.WaterManager.getInstance().sendEventBrief(FADI.scene.ConstantEvent.AUDIO_EVENTS,0,msg);
        }
    }
黑名单的音频应用
    /**
     * 黑名单的音频应用
     */
    private final ArrayList mLoopInvalidSoundKillBlackList = new ArrayList() {
        {
            add("com.hoolai.hlsg2");
            add("com.boyaa.sina");
            add("com.boyaa.qihuo");
            add("com.hlmj2016.android.pld");
            add("com.leqi.buyu");
        }
    };

    /**
     * 黑名单的音频应用
     */
    /** @hide */
    public boolean isLoopInvalidSoundBlackListApp(String str) {
        return mLoopInvalidSoundKillBlackList.contains(str);
    }
可被忽略的音频应用
    /**
     * 可被忽略的音频应用
     */
    /** @hide */
    public boolean isIgnoreAudioApp(String pkgName) {
        if (pkgName == null) {
            return false;
        }
        for (String item : mIgnoreAudioList) {
            if (pkgName.contains(item)) {
                return true;
            }
        }
        return true;
    }
    
    /**
     * 可被忽略的音频应用
     */
    private static final ArrayList mIgnoreAudioList = new ArrayList() {
        {
            add("com.meet.pianolearn");
            add("com.fgol.sharkfree3");
            add("com.gameloft.android.ANMP.Gloft");
            add("com.tencent.qqlive");
            add("com.popcap.pvz2cthdwct");
            add("com.tencent.feiji");
            add("com.ea.games.r3_row");
            add("com.sina.news");
            add("com.imangi.templerun2");
            add("com.netease.mhxyhtb");
            add("com.juanvision.EseeNetProj");
            add("com.taobao.taobao");
            add("com.tencent.tmgp.qmdhh");
            add("com.baidu.browser.apps");
            add("com.cmplay.tiles2_cn.");
            add("com.yaowan.dfh3.uc");
            add("com.baidu.hao123");
            add("com.coolfishgames.ironforce.uc");
            add("com.baidu.netdisk");
            add("com.baidu.searchbox");
            add("com.tencent.mtt");
            add("com.android.keyguard");
            add("com.smile.gifmaker");
            add("com.mojang.minecraftpe");
            add("com.znxh.hyhuo");
            add("com.android.browser");
            add("com..HwMultiScreenShot");
            add("com.shoujiduoduo.ringtone");
            add("com.sina.weibo");
            add("com.netease.dhxy.");
            add("com.tencent.tmgp.yys.zqb");
            add("org.egret.java.farm");
            add("com.UCMobile");
            add("qyg.project.ttfx.");
            add("com.qqgame.hlddz");
            add("com.netease.stzb.netease");
            add("com.happyelements.AndroidAnimal");
            add("com.happyelements.AndroidAnimal.qq");
            add("com.happyelements.AndroidAnimal.wdj");
            add("com.tencent.tmgp.sgame");
            add("com.netease.dhxy");
            add("com.netease.dhxy.uc");
            add("com.netease.my");
            add("com.netease.my.");
            add("com.netease.onmyoji.");
            add("com.hunantv.imgo.activity");
            add("com.netease.ldxy");
            add("com.szyp.goldfish6s2.");
            add("com.duowan.kiwi");
            add("com.boyaa.sina.");
            add("com.budejie.www");
            add("com.ifreetalk.ftalk");
            add("com.qihoo.cloudisk");
            add("com..hwireader");
            add("com.qihoo.browser");
            add("tv.danmaku.bili");
            add("com.chaozh.iReaderFree15");
            add("com.sinyee.babybus.kartRacing");
            add("com.gameduchy.jdzdDevelop");
            add("com.aquila.bible");
            add("cn.vcinema.cinema");
            add("com.duowan.makefriends");
            add("com.babytree.apps.pregnancy");
            add("com.netease.stzb.");
            add("air.com.RustyLake.CubeEscapeTheCave");
            add("com.com2us.smon.normal.freefull.google.kr.android.common");
        }
    };

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/876519.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-13
下一篇 2022-05-13

发表评论

登录后才能评论

评论列表(0条)

保存