当前位置: 首页 > news >正文

国内网站开发不用wordpress国外做外贸的网站

国内网站开发不用wordpress,国外做外贸的网站,wordpress打开文章很慢,广告联盟wordpress说实话#xff0c;android的代码是越来越难以阅读。业务函数里面狗皮膏药似的补丁与日俱增。继上篇简要介绍音频焦点的文章#xff0c;这篇文章的主要内容是分析audiofocus的实现。看了一下午的相关代码都没找到做audiofocus策略的核心逻辑。目前能看懂的大概包含下面两个逻辑…说实话android的代码是越来越难以阅读。业务函数里面狗皮膏药似的补丁与日俱增。继上篇简要介绍音频焦点的文章这篇文章的主要内容是分析audiofocus的实现。看了一下午的相关代码都没找到做audiofocus策略的核心逻辑。目前能看懂的大概包含下面两个逻辑。欢迎评论区沟通。 audiofocus实现的核心代码是在project_dir/frameworks/base/services/core/java/com/android/server/audio/MediaFocusControl.java project_dir/frameworks/base/services/core/java/com/android/server/audio/FocusRequester.java project_dir在这里指代android源码的根目录。 1.MediaFocusControl会维护所有audiofocus申请信息的堆栈mFocusStack。 2.android当系统进入铃声或者通话状态会静音住媒体播放器代码片段如下mRingOrCallActive变量会在应用申请焦点时进行判断刷新。 if (mRingOrCallActive) {mFocusEnforcer.mutePlayersForCall(USAGES_TO_MUTE_IN_RING_OR_CALL);} else {mFocusEnforcer.unmutePlayersForCall();} 3.audiofocus的监听器都是在AudioManager的队列里维护。代码如下 public void registerAudioFocusRequest(NonNull AudioFocusRequest afr) {final Handler h afr.getOnAudioFocusChangeListenerHandler();final FocusRequestInfo fri new FocusRequestInfo(afr, (h null) ? null :new ServiceEventHandlerDelegate(h).getHandler());final String key getIdForAudioFocusListener(afr.getOnAudioFocusChangeListener());mAudioFocusIdListenerMap.put(key, fri);}4.audiomanager进行焦点变化通知的核心类IAudioFocusDispatcher会调用listener。IAudioFocusDispatcher 自身会被注册给audioservice。 status service.requestAudioFocus(afr.getAudioAttributes(),afr.getFocusGain(), mICallBack,mAudioFocusDispatcher,clientId,getContext().getOpPackageName() /* package name */, afr.getFlags(),ap ! null ? ap.cb() : null,sdk);阅读代码期间出现重大错误阅读函数handleFocusLossFromGain的时候认为gain是增益的含义没仔细阅读实现。导致增加阅读理解代码的时间周期。gain在这里应该是对应焦点的第一种类型永久性焦点。犯了惯性思维的错误。遇到这种与认知相悖的地方应该更加小心。gain在这块代码里面的含义是获得与之对应的是loss。 androidaudio进行audiofocus控制决策的核心代码是下面这一段 if (mMultiAudioFocusEnabled (focusChangeHint AudioManager.AUDIOFOCUS_GAIN)) {if (enteringRingOrCall) {if (!mMultiAudioFocusList.isEmpty()) {for (FocusRequester multifr : mMultiAudioFocusList) {multifr.handleFocusLossFromGain(focusChangeHint, nfr, forceDuck);}}} else {boolean needAdd true;if (!mMultiAudioFocusList.isEmpty()) {for (FocusRequester multifr : mMultiAudioFocusList) {if (multifr.getClientUid() Binder.getCallingUid()) {needAdd false;break;}}}if (needAdd) {mMultiAudioFocusList.add(nfr);}nfr.handleFocusGainFromRequest(AudioManager.AUDIOFOCUS_REQUEST_GRANTED);notifyExtPolicyFocusGrant_syncAf(nfr.toAudioFocusInfo(),AudioManager.AUDIOFOCUS_REQUEST_GRANTED);return AudioManager.AUDIOFOCUS_REQUEST_GRANTED;}}思考android Audio focus的设计时我想到一个问题如果某APP先申请media类型的focus然后再去申请call类型的focus会怎么样
http://www.eeditor.cn/news/119273/

相关文章:

  • 镇江网站推广排名网站建设实例大制作
  • 遵义一般做一个网站需要多少钱站外推广策划书
  • 建设局网站外贸网站建设有哪些要求
  • 网站如何导入织梦cms中国制造网外贸平台
  • 如何访问国外网站手机设计logo软件
  • 石家庄响应式模板建站wordpress默认参数
  • 网站免费制作平台这样做自己公司的网站
  • 离型剂技术支持东莞网站建设云南建投第七建设有限公司网站
  • jsp ajax网站开发典型实例 pdf软文发稿平台有哪些
  • 石家庄市高新区建设局网站交换友情链接的途径有哪些
  • 安徽合肥网站制作wordpress可视化建站
  • 家装e站怎么学习做网站
  • 网站如何做点击链接佛山响应式网站
  • 网站 架构 设计海报设计在线生成免费
  • 建设银行官方网站面试详细信息济南做网站的公司哪家好
  • 国外设计网站欣赏上海优化seo排名
  • 怎么查网站的浏览量成都市城乡建设局网站
  • 做公益网站需要什么资质站长工具seo综合查询5g
  • 网站制作规划设计内容浙江省台州市做网站多少钱
  • 上海建设工程咨询网招聘seo网络排名优化
  • 网站建设公司使用图片侵权使用者有无责任安徽省住房建设工程信息网站
  • 学校网站建设先进个人荣誉淄博做网站多少钱
  • 桂林学校网站制作目录 首页 wordpress
  • 做电商看的网站有哪些内容大庆建设公司网站
  • 最好的网站模版网站建设的请示
  • 如何用手机做音乐网站post wordpress
  • 什么值得买网站模板微信h5页面制作教程
  • 天河区门户网站教育专栏网站建设公司的介绍
  • 鹏翔科技 网站建设创建网站要多长时间
  • 电子商城网站建设参考文献克隆的网站怎么做数据库