Android 8.0 新特性之语言区国际化和隐私性

简介: 语言区域和国际化Android 7.0引入了能指定默认类别语言区域的概念,某些API在使用默认的DISPLAY类别语言区域时,仍然使用的是不带参数Locale.getDefault()函数。

语言区域和国际化

Android 7.0引入了能指定默认类别语言区域的概念,某些API在使用默认的DISPLAY类别语言区域时,仍然使用的是不带参数Locale.getDefault()函数。在Android 8.0,以下的一些函数使用Locale.getDefault(Category.DISPLAY)来代
Locale.getDefault(): Currency.getDisplayName(); Currency.getSymbol(); Locale.getDisplayScript().
当Locale参数指定的displayScript值不可用时,Locale.getDisplayScript(Locale)回退到Locale.getDefault().

  1. 以上的函数调用时传入参数为null时,都会抛出NullPointerException
  2.  时区名称的分析方法发生了变化。之前,Android设备使用在启动时取样的系统时钟值,用来分析日期时间的时区名称。所以如果在启动时或者一些少数情况下系统时钟出现错误,会导致分析结果出现问题。现在,一般情况下,分析时区名称时使用ICU和当前的系统时钟值。此种分析方法能提供更准确的结果,使用SimpleDateFormat等类可能会与之前的Android版本得到的结果不同。
    

3.Android 8.0的ICU库更新到了版本58.


隐私性

Android 8.0对平台的隐私性有关的变更:

  1. 改变了标识符的处理方式。在OTA之前安装的Android 8.0的应用,ANDROID_ID的值保持不变,除非在OTA之后卸载了又重新安装,在OTA后在卸载期间要保持ANDROID_ID值保留,可以利用key/value来备份。

2.在Android 8.0上,由应用签署秘钥、用户和设备来确定唯一的ANDROID_ID值,因此在相同的设备上同一用户下运行的具有不同签名应用页不会有相同的Android ID。
签名相同,在OTA到Android 8.0之前未安装的应用,ANDROID_ID的值在软件包卸载或重新安装时就不会发生变化。

系统更新导致软件包签名发生变化,ANDROID_ID的值也不会变。
要借助一个简单、标准的系统实现获利的应用,使用广告ID,
广告 ID 是 Google Play 服务针对广告服务提供的唯一 ID,此 ID 可由用户重置。

  1. 查询 net.hostname 系统属性返回的结果为空。
  2. 系统属性 net.dns1、net.dns2、net.dns3 和 net.dns4 不再可用。
  3. 获取DNS之类的网络的连接信息,具有ACCESS_NETWORK_STATE权限的应用可以注册NetworkRequest 或 NetworkCallback 对象来获取,在Android5.0后才可使用。
  4. 废弃Build.SERIAL 。新的获取硬件序列号的的函数为Build.getSerial(),需要READ_PHONE_STATE权限。
  5. LauncherApps API不再允许work profile apps访问primary profile apps的信息,与之前一样,尝试访问没有关联的个人资料会引发SecurityExceptions。当某个用户被配置在托管配置文件中时,LauncherApps API的行为就像同一的配置文件组的其它配置文件中没有安装任何应用一样。


http://blog.csdn.net/wsq_tomato/article/details/79180475

目录
相关文章
|
2月前
|
Android开发 开发者 Kotlin
探索安卓开发中的新特性
【9月更文挑战第14天】本文将引导你深入理解安卓开发领域的一些最新特性,并为你提供实用的代码示例。无论你是初学者还是经验丰富的开发者,这篇文章都会给你带来新的启示和灵感。让我们一起探索吧!
|
2月前
|
安全 Android开发 iOS开发
安卓与iOS的较量:技术特性与用户体验的深度解析
在移动操作系统的战场上,安卓和iOS一直占据着主导地位。本文将深入探讨这两大平台的核心技术特性,以及它们如何影响用户的体验。我们将从系统架构、应用生态、安全性能和创新功能四个方面进行比较,帮助读者更好地理解这两个系统的异同。
71 3
|
3月前
|
安全 Java Android开发
探索安卓开发的未来:Kotlin语言的崛起与挑战
在这篇文章中,我们将深入探讨Kotlin语言在安卓开发领域的应用及其对传统Java开发的颠覆性影响。通过分析Kotlin的特性、社区支持以及在实际项目中的应用案例,我们揭示了这一现代编程语言如何为开发者提供更简洁、更安全的编程体验,并讨论了它在面对性能优化和向后兼容性时所面临的挑战。文章旨在为读者呈现一个全面的视角,评估Kotlin作为未来安卓开发主流语言的可能性。
72 1
|
4月前
|
XML 自然语言处理 Android开发
🌐Android国际化与本地化全攻略!让你的App走遍全球无障碍!🌍
【7月更文挑战第28天】在全球化背景下,实现Android应用的国际化与本地化至关重要 for 用户基础扩展。本文通过旅游指南App案例,介绍全攻略。步骤包括资源文件拆分与命名、适配布局与方向、处理日期时间及货币格式、考虑文化习俗及进行详尽测试。采用Android Studio支持,创建如`res/values-en/strings.xml`等多语言资源文件夹,使用灵活布局解决文本长度差异问题,并通过用户反馈迭代优化。最终,打造一款能无缝融入全球各地文化的App。
195 3
|
4月前
|
Android开发 Swift iOS开发
探索Android与iOS开发的差异性:平台特性与用户体验的深度剖析
【7月更文挑战第27天】在移动应用开发的广阔天地中,Android和iOS两大阵营各自占据半壁江山。本文将深入探讨这两个平台在开发过程中的关键差异,从编程语言、工具集到用户界面设计原则,以及它们如何影响最终的用户体验。通过对比分析,我们将揭示每个平台的独特优势,并讨论如何在这些差异中寻找平衡点,以实现跨平台的成功。
|
1月前
|
存储 安全 Android开发
F-Droid:尊重自由与隐私的安卓应用商店
F-Droid 是安卓平台上的自由开源应用商店,专为关注隐私和数据安全的用户设计。本文详细介绍了 F-Droid 的特点,包括其对自由和隐私的重视、无广告和无追踪代码的承诺、强大的应用搜索与管理功能,以及对开源社区的支持。用户可以通过 F-Droid 安全地浏览、安装和管理应用程序,并且开发者也可以发布开源应用。未来,F-Droid 将继续提升用户体验,鼓励更多的开发者与用户参与其中,推动自由开源软件的发展。
50 1
|
2月前
|
监控 Android开发 iOS开发
深入探索安卓与iOS的系统架构差异:理解两大移动平台的技术根基在移动技术日新月异的今天,安卓和iOS作为市场上最为流行的两个操作系统,各自拥有独特的技术特性和庞大的用户基础。本文将深入探讨这两个平台的系统架构差异,揭示它们如何支撑起各自的生态系统,并影响着全球数亿用户的使用体验。
本文通过对比分析安卓和iOS的系统架构,揭示了这两个平台在设计理念、安全性、用户体验和技术生态上的根本区别。不同于常规的技术综述,本文以深入浅出的方式,带领读者理解这些差异是如何影响应用开发、用户选择和市场趋势的。通过梳理历史脉络和未来展望,本文旨在为开发者、用户以及行业分析师提供有价值的见解,帮助大家更好地把握移动技术发展的脉络。
93 6
|
2月前
|
XML Android开发 数据格式
🌐Android国际化与本地化全攻略!让你的App走遍全球无障碍!🌍
在全球化背景下,实现Android应用的国际化与本地化至关重要。本文以一款旅游指南App为例,详细介绍如何通过资源文件拆分与命名、适配布局与方向、处理日期时间及货币格式、考虑文化习俗等步骤,完成多语言支持和本地化调整。通过邀请用户测试并收集反馈,确保应用能无缝融入不同市场,提升用户体验与满意度。
104 3
|
2月前
|
安全 定位技术 Android开发
探索Android 12的隐私保护特性
随着数字化生活的深入,个人隐私保护成为用户关注的焦点。本文将介绍Android 12新推出的隐私保护功能,包括隐私仪表板、近似位置访问和麦克风/相机指示器等,帮助读者了解如何通过这些工具来增强自己的数据安全。
|
1月前
|
开发工具 Android开发 iOS开发
移动应用开发的艺术:探索Android与iOS的操作系统特性
【9月更文挑战第33天】在数字时代的浪潮中,移动应用已成为我们日常生活不可或缺的一部分。本文将深入探讨两个主流移动操作系统——Android和iOS——的独特特性,并分析它们如何影响移动应用的开发过程。我们将通过比较这两个系统的设计哲学、用户界面(UI)设计、开发工具以及市场策略,来揭示开发者如何在这些不同的平台上打造出色的用户体验。无论你是开发者还是对移动技术感兴趣的读者,这篇文章都将为你提供宝贵的见解。
下一篇
无影云桌面