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

网上拿手工做的网站信息流广告怎么投放

网上拿手工做的网站,信息流广告怎么投放,长春关键词排名推广,网站建设品牌公司推荐Android 系统,默认语言 文章目录 需求:场景 参考资料实现方案实现思路编译脚本熟悉-平台熟悉mssi_64_cnkernel-4.19 解决方案修改文件-实现方案 源码分析PRODUCT_LOCALES 引用PRODUCT_DEFAULT_LOCALE 定义get-default-product-locale 方法定义PRODUCT_DE…

Android 系统,默认语言

文章目录

  • 需求:
    • 场景
  • 参考资料
  • 实现方案
    • 实现思路
      • 编译脚本熟悉-平台熟悉
      • mssi_64_cn
      • kernel-4.19
    • 解决方案
      • 修改文件-实现方案
  • 源码分析
    • PRODUCT_LOCALES 引用
    • PRODUCT_DEFAULT_LOCALE 定义
    • get-default-product-locale 方法定义
    • PRODUCT_DEFAULT_LOCALE 的使用
    • ro.product.locale
      • adb 看属性值
      • app 应用层获取当前语言
      • 小结
  • 总结


需求:

MTK平台 设置默认语言。一般默认中文、英文偏多。 也有很多其它小语种客制化需求。

场景

Android平台不同客户产品售卖到不同区域,开机默认语言不一样。特别是国外产品,默认大多数是英文,也有日语、韩语、法语…

产品需要客制化客户要求的语言需求

参考资料

MTK android 修改系统默认语言
修改android 系统默认语言
修改Android系统默认语言配置及源码解析
Android10 修改默认语言
MTK系统开发-编译部分了解

实现方案

实现思路

这里在MTK平台上面实验,其它平台并不具备直接的参考性,如RK平台记得更改的也是配置,但方案不一样

编译脚本熟悉-平台熟悉

搞清楚自己的平台下 编译的项目相关信息,比如 编译固件的脚本部分,至少知道编译的平台,反推联系到一些配置文件在哪里比如如下:
在这里插入图片描述

mssi_64_cn

基于上面编译脚本平台熟悉,我们自己就知道部分配置问题,这里只是先给出目录相关信息,
路径:

\device\mediatek\system\mssi_64_cn

在这里插入图片描述

kernel-4.19

其实就是内核目录,用到的是kernel-4.19 版本内核。
这个不是这里的重点,只是提一下,根据编译脚本就知道大概得配置文件在哪个文件下,方便后续看代码,定位具体是哪个文件的配置关联。
在这里插入图片描述

解决方案

修改文件-实现方案

\device\mediatek\system\mssi_64_cn\sys_mssi_64_cn.mk PRODUCT_LOCALES := en_US zh_CN zh_TW es_ES pt_BR ru_RU fr_FR de_DE tr_TR vi_VN ms_MY in_ID th_TH it_IT ar_EG hi_IN bn_IN ur_PK fa_IR pt_PT nl_NL el_GR hu_HU tl_PH ro_RO cs_CZ ko_KR km_KH iw_IL my_MM pl_PL es_US bg_BG hr_HR lv_LV lt_LT sk_SK uk_UA de_AT da_DK fi_FI nb_NO sv_SE en_GB hy_AM zh_HK et_EE ja_JP kk_KZ sr_RS sl_SI ca_ES

根据客需,排在第一位的就讲对应的语言放到第一个位置即可。

下面列举不同配置的实际情况,测试有效:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

源码分析

PRODUCT_LOCALES 引用

为什么修改路径 文件中的配置 PRODUCT_LOCALE 顺序有效?
上面分析了 PRODUCT_LOCALES 赋值各种语音,我们看它在哪里用到
如下 路径文件

\build\make\core\sysprop.mkPRODUCT_DEFAULT_LOCALE="$(call get-default-product-locale,$(PRODUCT_LOCALES))" \

在这里插入图片描述

PRODUCT_DEFAULT_LOCALE 定义

上面看到PRODUCT_LOCALES 引用地方, 赋值了PRODUCT_DEFAULT_LOCALE 变量,其实调用了方法
get-default-product-locale 传递了参数 PRODUCT_LOCALES,这里就是 变量 PRODUCT_DEFAULT_LOCALE 的定义

接下来其实就要继续看 变量PRODUCT_DEFAULT_LOCALE 在哪里引用 已经 get-default-product-locale 方法说明

get-default-product-locale 方法定义

路径:

\build\make\core\sysprop.mk

上面 定义 PRODUCT_DEFAULT_LOCALE 地方,已经给了 get-default-product-locale 方法定义的说明,如下。

#
# Note: parts of this file that can't be generated by the build-properties
# macro are manually created as separate files and then fed into the macro# Accepts a whitespace separated list of product locales such as
# (en_US en_AU en_GB...) and returns the first locale in the list with
# underscores replaced with hyphens. In the example above, this will
# return "en-US".
define get-default-product-locale
$(strip $(subst _,-, $(firstword $(1))))
endef

在这里插入图片描述
其实就是你传递参数数字,取第一个。 这个就验证了 配置 PRODUCT_LOCALES 变量值顺序时候就可以默认哪个语音的原因

PRODUCT_DEFAULT_LOCALE 的使用

上面层层分析了变量、变量应用、方法。 这里开始追踪上面最终赋值到了 PRODUCT_DEFAULT_LOCALE,那么它在哪里调用。
路径:

\build\tools\buildinfo.sh 

在这里插入图片描述

最终赋值给了属性值:ro.product.locale

ro.product.locale

adb 看属性值

C:\Users\Administrator>adb shell
getDisPlay:/ $ getprop | grep ro.product.locale
[ro.product.locale]: [en-US]
DisPlay:/ $

app 应用层获取当前语言

            Locale locale = getResources().getConfiguration().locale;String language = locale.getLanguage();String local = Locale.getDefault().toString();

小结

涉及到的文件参考或修改如下:

\device\mediatek\system\mssi_64_cn\sys_mssi_64_cn.mk    变量PRODUCT_LOCALES 值 顺序,调整默认语言
\build\make\core\sysprop.mk    定义变量PRODUCT_DEFAULT_LOCALE  引用变量 PRODUCT_LOCALES ,定义方法 get-default-product-locale\build\tools\buildinfo.sh     引用变量PRODUCT_LOCALES,赋值属性 ro.product.locale

adb 获取 或者 app 应用上层,获取语言其实就是获取属性值 ro.product.locale,这样就完整分析了 为什么修改PRODUCT_LOCALES 值value 顺序可以实现默认语言功能了。

总结

  • mtk 平台设置默认语言流程分析清除了,调整变量值PRODUCT_LOCALES 的顺序
  • 为什么要搞清楚编译编译脚本 相关的项目、内核版本、项目名称,这些就直接能够找到对应文件配置在哪个地方可能是变量值定义或者引用地方。 grep 搜索太多、大量的地方,搞不清楚具体应该是哪一个。
  • 既然分析到了改变属性值顺序就可以了,那我们直接定义变量值不就可以了嘛。这里可以参考mtk 相关资料,决定变量值地方蛮多,跟编译顺序有关。大多可能存在覆盖地方,所以编译顺序可以参考上面相关资料
  • 本次实验更改,仅供参考。比如其它项目就是定义变量值就可以了,跟编译顺序相关
http://www.dtcms.com/wzjs/346507.html

相关文章:

  • 国内做香港视频网站关键词竞价排名
  • wordpress网站移植百度seo排名优化
  • 广州网站开发创意设计公司最近10个新闻
  • 网络公司网站策划书最近发生的热点新闻
  • 软件开发的学校有哪些seo具体优化流程
  • 如何做简易网站百度游戏风云榜
  • 郑州市 网站建设企业网站建站
  • 永嘉高端网站建设价格友情链接多少钱一个
  • 网站设计原则公司市场营销策划方案
  • wordpress 按装网站整站优化推广方案
  • 酒店网站建设设计软文发布公司
  • 珠海网站制作专业长春seo网站排名
  • html5微网站百度保障平台 客服
  • 模板网站和插件有哪些搜索引擎大全入口
  • 作词做曲网站刚刚传来最新消息
  • 家居企业网站建设平台百度我的订单app
  • 做网站技术人员seo基础知识培训视频
  • 如何做网站收录seo实战论坛
  • 网站开发7个基本流程图河北网站优化公司
  • 个人网站开发论文外链工具软件
  • 公司网站建设 上海手机地图app下载安装
  • 上城区商城网站建设深圳百度推广公司
  • 产地证在什么网站做网站设计是做什么的
  • 企业网站制作模板收录优美图片
  • 长安网站建设详细教程自动推广软件免费
  • 建个人网站怎么赚钱吗线上推广方案怎么做
  • godaddy如何创建网站网站建站方式有哪些
  • 常州公司网站模板建站软文客
  • 大连网站建设培训班陕西网络推广公司
  • 苏州网站建设公司电话媒介星软文平台