锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

设备兼容处理-[Android_YangKe]

时间:2022-10-12 11:30:00 a设备开停传感器

Android 设计是为了使所有的应用程序都能在不同类型的设备上运行。主要设备有:手机、平板电脑、电视。作为一名开发人员,适应范围为应用程序提供了巨大的潜在用户。为了使我们的产品成功地应用于所有设备,我们应该容忍一些特征的变化,并提供一个灵活的用户界面,以适应不同的屏幕配置。

为了实现这一目标,Android 为我们提供了一个 App Framework app resources,(动态加载资源)我们可以为不同的屏幕提供不同的屏幕 UI 在当前设备上,布局可以近乎完美地展示我们的应用功能。

如果有必要,我们可以控制我们的应用可以在什么样的设备上运行,这里主要解释了我们可以控制哪些设备访问您的应用程序,以及如何准备您的应用程序,以确保他们在不同的设备上达到如期的设计。

首先,兼容性的主要含义是什么?

当你读了很多关于的东西 Android 在开发数据时,你很可能会遇到compatibility(兼容性)这个词。兼容性有两种:设备兼容性和应用程序兼容性。

设备兼容性:Android 它是一个开源操作系统,国内许多手机制造商使用它 Android 系统。所以国内有很多不同类型的设备(主要指移动设备),比如有些手机有没有NFC、闪光灯,陀螺仪,GPS等硬件。**乱,砸,大小不一 **。

应用兼容性:基于硬件,我们的产品可以展示更好的用户体验。例如:有些手机没有 GPS 硬件,一个基于该硬件的应用程序,可能在不同的手机设备中显示不同的功能。我们可以给出友好的提示或屏蔽没有这样硬件的设备。

设备功能处理

根据设备特性管理应用程序的可用性,Android 定义特性 id 对于任何硬件或软件功能,并非所有设备都可用。例如,罗盘传感器的特性 id FEATURE_SENSOR_COMPASS 和FEATURE_APP_WIDGETS 窗小部件的特点 id。

如果有必要,你可以防止用户安装您的应用时设备不提供一个给定的功能通过声明它元素的应用程序清单文件。

例如,如果您的应用程序在设备上毫无意义,并且缺乏罗盘传感器,则可以声明罗盘传感器和以下列表的标签

android:required="true" />

...

声明使用的单个硬件或软件功能。

用途是通知任何外部实体您的应用所依赖的硬件和软件功能集。 提供的元素 required 属性可以让你指定你的应用程序是否需要声明功能,没有功能就不能正常工作,或者使用这个功能只是一个优先级,没有它仍然可以正常工作。 可能是因为功能支持 Android 设备不同,元素的重要作用是使应用程序描述其随设备而变化的功能。

您的应用声明的可用功能集对应 Android PackageManager

提供的功能常量集,

在谷歌应用商店中,商店将比较您的应用程序特性,检查每个用户的设备特性,以确定应用程序是否与每个设备兼容。如果设备不提供您的应用程序所需的所有功能,用户将无法安装您的应用程序。同样,国内主流应用市场也应该如此,没有实践。

若您的应用程序的主要功能在某些设备上没有相应的硬件,则应将必要的属性设置为false并检查设备在运行过程中的特性。若当前设备不能使用应用程序功能,则优雅地降低相应的应用功能。例如,您可以调用它 hasSystemFeature() 查询功能是否可用。

PackageManager pm = getPackageManager();

if (!pm.hasSystemFeature(PackageManager.FEATURE_SENSOR_COMPASS)) {

// This device does not have a compass, turn off the compass feature

disableCompassFeature();

}

注:一些系统权限隐含要求设备功能的可用性。 例如,如果您的应用程序要求访问 BLUETOOTH 隐式需要的权限 FEATURE_BLUETOOTH 设备功能。 您可以根据此功能禁止过滤,并将所需的属性设置为false无蓝牙设备可以使用您的应用程序。

平台版本

不同的设备运行不同的设备 Android 版本,例如 Android 4.0 或 Android 4.4。 每个连续平台版本通常都会添加新的 API,而不是以前的版本。 要指出哪些 API 每个平台版本都可以指定一个 API 级别。 例如,Android 1.0 是 API 级别 1,Android 4.4 是 API 级别 19。

API 允许您使用清单标签及其等级 minSdkVersion 声明应用程序兼容性的最低版本。

例如,日历提供程序 API 已在 Android 4.0(API添加级别14)。 如果你的应用程序没有这些API的情况下无法运行,则应将 API 级别 14 声明是应用程序的最低支持版本,如下所示:

...

minSdkVersion 最低版本的属性声明你的应用程序兼容,targetSdkVersion 您已经优化了应用程序的最高版本。

屏幕适配

Android运行各种尺寸的设备,从手机到平板电脑和电视。 根据屏幕类型对设备进行分类,Android 定义了两个特征:屏幕尺寸(屏幕物理尺寸)和屏幕密度(屏幕上像素的物理密度,称为DPI)。 为简化不同的配置,Android将这些变体概括为使它们更容易定位的组

小,普通,大,超大

几个密度值:mdpi (medium), hdpi (hdpi), xhdpi (extra high), xxhdpi (extra-extra high),其他。

默认情况下,您的设备与所有设备的尺寸和密度兼容,因为系统会适当调整 UI 布局及加载响应 res 同时,您应该为不同的屏幕尺寸添加特殊的布局,优化位图图像,优化每个屏幕配置的用户体验。

再坚持一次,再努力一次,再前进一次。也许设备兼容性离你只有一步之遥。俗话说,即使只有1%的希望,我也要100%努力。学习不能停止!

ps: 如果有帮助: 喜欢,评论,转发,动动你的小手,让更多的人知道! 帅比-杨

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章