Activity中ConfigChanges属性的用法
通过设置这个属性可以使Activity捕捉设备状态变化,以下是可以被识别的内容:
CONFIG_FONT_SCALE
CONFIG_MCC
CONFIG_MNC
CONFIG_LOCALE
CONFIG_TOUCHSCREEN
CONFIG_KEYBOARD
CONFIG_NAVIGATION
CONFIG_ORIENTATION
设置方法:将下列字段用“|”符号分隔开,例如:“locale|navigation|orientation
”
Value |
Description |
“mcc“
|
The IMSI mobile country code (MCC) has changed — that is, a SIM hasbeen detected and updated the MCC.移动国家号码,由三位数字组成,每个国家都有自己独立的MCC,可以识别手机用户所属国家。 |
“mnc“
|
The IMSI mobile network code (MNC) has changed — that is, a SIM hasbeen detected and updated the MNC.移动网号,在一个国家或者地区中,用于区分手机用户的服务商。 |
“locale“
|
The locale has changed — for example, the user has selected a new language that text should be displayed in.用户所在地区发生变化。 |
“touchscreen“
|
The touchscreen has changed. (This should never normally happen.) |
“keyboard“
|
The keyboard type has changed — for example, the user has plugged in an external keyboard.键盘模式发生变化,例如:用户接入外部键盘输入。 |
“keyboardHidden“
|
The keyboard accessibility has changed — for example, the user has slid the keyboard out to expose it.用户打开手机硬件键盘 |
“navigation“
|
The navigation type has changed. (This should never normally happen.) |
“orientation“
|
The screen orientation has changed — that is, the user has rotated the device.设备旋转,横向显示和竖向显示模式切换。 |
“fontScale“
|
The font scaling factor has changed — that is, the user has selected a new global font size.全局字体大小缩放发生改变 |
通过一个例子介绍这个属性的用法:首先需要修改项目的manifest:
?View Code XML
<manifestxmlns:android="http://schemas.android.com/apk/res/android" package="com.androidres.ConfigChangedTesting" android:versionCode="1" android:versionName="1.0.0"> <applicationandroid:icon="@drawable/icon"android:label="@string/app_name"> <activityandroid:name=".ConfigChangedTesting" android:label="@string/app_name" android:configChanges="keyboardHidden|orientation"> <intent-filter> <actionandroid:name="android.intent.action.MAIN"/> <categoryandroid:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> </application> </manifest>
|
在Activity中添加了 android:configChanges属性,目的是当所指定属性(Configuration Changes)发生改变时,通知程序调用 onConfigurationChanged()函数
分享到:
相关推荐
### Android Manifest.xml 文件详解 #### 一、Manifest.xml 文件概览 `Manifest.xml` 是 Android 应用程序的核心配置文件之一,它定义了应用程序的基本结构和行为,包括应用的组件(如 Activity、Service 和 ...
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.project"> <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="30"/> android:allowBackup=...
在Android开发中,`android-support-v4`库是Google提供的一款重要的支持库,它使得开发者能够在较旧版本的Android系统上使用新版本API的功能。这个库涵盖了广泛的组件和功能,帮助开发者实现向后兼容,提高应用程序...
在Android开发过程中,`android-support-v4.jar`是一个至关重要的库文件,它为早期版本的Android提供了对新API的支持,使得开发者能够在低版本系统上实现高级功能。在本问题中,开发者遇到了`checkSelfPermission`...
- Manifest文件:AndroidManifest.xml文件的重要性,它是应用的配置文件,用于声明应用组件和权限。 - 活动(Activity):作为用户界面的主要组件,如何创建和管理活动生命周期。 - 主Activity与Intent:理解启动...
Manifest-Version: 1.0 Main-Class: com.example.MyApp Class-Path: lib/library.jar ``` 在这个例子中,`Main-Class` 属性指定了 JAR 文件的主类,而 `Class-Path` 描述了运行时所需的其他库。 **读取 MANIFEST....
在manifest中添加 <uses-permission android:name="android.permission.RECORD_AUDIO" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android....
MNUpdateAPK Android APK Update Version APK版本更新的下载和安装,适配7.0,8.0...1:在Manifest.xml中添加配置 <!--网络权限问题--> <!--8.0安装需要的权限--> <!--读写权限--> 2:代码使
在Android应用开发中,...理解MANIFEST.MF、CERT.SF和CERT.RSA之间的关系对于开发者调试签名问题或深入理解Android安全机制非常重要。同时,熟悉相关的哈希和加密算法,如SHA-256和RSA,也是保障移动应用安全的基础。
在Android应用开发中,`AndroidManifest.xml`是一个至关重要的文件,它包含了应用程序的基本配置和元数据,如应用的包名、所需权限、启动活动、服务、接收器等。本话题将详细探讨`AndroidManifest.xml`的反编译工具...
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.my_domain.app.helloactivity"> <application android:label="@string/app_name"> <activity android:name=".HelloActivity...
- `xmlns:android`:命名空间声明,定义了XML属性的命名空间。 - `package`:指定应用的Java包名,决定了应用的唯一标识。 - `sharedUserId`:若多个应用设置相同的值,它们将共享同一用户ID,允许它们访问彼此的...
1.检测当前版本的信息AndroidManifest.xml-->manifest-->android:versionName。 2.从服务器获取版本号(版本号存在于xml文件中)并与当前检测到的版本进行匹配,如果不匹配,提示用户进行升级,如果匹配则进入程序...
Manifest-Version: 1.0 Main-Class: HelloWorld Created-By: 1.4.2_03 (Sun Microsystems Inc.) ``` - 使用`jar cvfm`命令打包并指定MANIFEST.MF: ```bash jar cvfm Hello.jar META-INF\manifest.mf Hello...
在Android系统中,SD卡(Secure Digital card)是设备扩展存储空间的重要部分,它允许用户存储大量的数据,如照片、视频、音乐和其他应用程序的数据。在Android应用开发中,理解和掌握SD卡的文件读写功能至关重要。...
webservice CXF 报错:java.lang.NoClassDefFoundError: org/apache/neethi/builders/AssertionBuilder 需要用到此jar文件 通过apache官网可获得。 文件位置\apache-cxf-2.7.13\lib
java -jar target/manifest-merger-jar-with-dependencies.jar --main mainAndroidManifest.xml --log [VERBOSE, INFO, WARNING, ERROR] --libs [path separated list of lib's manifests] --overlays [path ...
它通常包含一个xmlns:android属性来提供文件内使用的某些系统属性。 常用的Manifest节点标签 1. application节点:它是每一个清单文件中唯一的,用于指定应用程序的各种元数据(包括标题、图标和主题)。它还可以...
- `$ ~/bin/repoinit -u git://android.git.kernel.org/platform/manifest.git` - `$ ~/bin/reposync` #### 三、在 Eclipse 中浏览 Android 源代码 1. **在 SDK 目录下创建 sources 文件夹** - 将下载的源代码...
在`android-12.0.0-r34`的上下文中,`android.ipr`将定义该项目的结构,包括Android模块、SDK版本(可能是API 12或更高)、Gradle配置,以及任何其他特定于Android开发的设置,如AndroidManifest.xml的引用和资源...