首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如果我在API level 21 (5.0)上做一个应用程序,它能在新版本的android上工作吗?

如果您在API level 21 (5.0)上开发的应用程序,通常情况下它应该能够在新版本的Android上工作。Android的设计理念是向后兼容的,因此较旧的API级别上构建的应用程序通常可以在较新的Android版本上运行。

然而,需要注意的是,新版本的Android可能引入了一些新的特性、API或行为变化,这可能会导致您的应用程序在新版本上出现一些问题。为了确保您的应用程序在新版本上正常工作,您可能需要进行一些测试和适配工作。

在进行应用程序的适配时,您可以采取以下步骤:

  1. 检查API变化:查阅Android官方文档中关于新版本的API变化和行为变化的文档,了解新版本中引入的变化。这样可以帮助您确定是否需要对应用程序进行修改。
  2. 更新依赖库:如果您的应用程序使用了第三方库或框架,确保这些库和框架已经更新到与新版本兼容的版本。
  3. 测试应用程序:在新版本的Android设备或模拟器上进行全面的测试,确保应用程序在新版本上正常运行,并修复任何出现的问题。
  4. 适配新特性:如果新版本引入了一些新的特性或API,您可以考虑利用这些特性来改进您的应用程序,提供更好的用户体验。

总之,虽然在API level 21 (5.0)上开发的应用程序通常可以在新版本的Android上工作,但为了确保应用程序的兼容性和稳定性,建议您进行适当的测试和适配工作。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android API Level对应版本

来自 维基百科 以API LEVEL 更新维度排列 Android 版本 API LEVEL 名称 Linux 内核 首次发布日期 9.0 28 Pie 4.4.107、4.9.84、4.14.42...API LEVEL Android开发者使用用于开发Android应用程序SDK 版本,因为Google会不断对外发布新Android版本,版本修改需反映到开发者SDK,为了避免不同版本做成线上异常...,需要为不同Android版本设立不同API LEVEL让开发者做好适配。...如果版本更新不影响SDKapi,可以不升级API LEVEL。 系统名称 区别于Android版本,一般因为小修改或者bugfix而发布版本不会更新系统名称。...内核版本 Android是基于Linux,而Linux本身也不断发展、开发新特性、bugfix,提高稳定性,所以一般Android发布新版本也会迭代内核版本,保持内核稳定与安全。

5.8K40

Multidex记录一:介绍和使用

Google官方:配置方法数超过 64K 应用 Android 5.0 之前版本 Dalvik 可执行文件分包支持 Android 5.0API 级别 21)之前平台版本使用 Dalvik 运行时来执行应用代码...Android 5.0 及更高版本 Dalvik 可执行文件分包支持 Android 5.0API 级别 21)及更高版本使用名为 ART 运行时,后者原生支持从 APK 文件加载多个 DEX...方案应用可能不能在低于Android 4.0 (API level 14) 机器启动,这个主要是因为Dalvik linearAlloc一个bug ; 采用MultiDex方案应用因为需要申请一个很大内存...,在运行时可能导致程序崩溃,这个主要是因为Dalvik linearAlloc 一个限制,这个限制 Android 4.0 (API level 14)已经增加了, 应用也有可能在低于 Android...5.0 (API level 21)版本机器触发这个限制。

1.5K10

【翻译】.NET 5 Preview8发布

要使用.NET5我们需要最新版本 Visual Studio (包括 Visual Studio for Mac) 才能使用 .NET 5.0. .NET 5.0包括许多改进,特别是单个文件应用程序,...80%注释,他们正在研究是否可以发布.NET5.0 RTM之前注释剩余20%如果没有,他们将在.NET6.0早期完成其余注释。...他们希望这些改进也能在库和应用程序中带来可衡量胜利 .NET 5.0 Target Framework 我们正在改变,.NET5.0目标框架使用方法,下面的项目文件演示了新.NET5.0目标框架...我们正在与一些ISV合作,他们希望其应用程序Windows ARM64可用。如果符合您情况,请通过dotnet@microsoft.com与我们联系。我们希望尽快为您提供构建版本。....NET 5.0中,单个文件应用程序主要集中Linux(稍后会详细介绍)。它们可以是框架相关,也可以是独立。依赖于全局安装.NET运行时,依赖于框架单个文件应用程序可能很小。

76820

Head First Android Toolbar

AppCompat v21 delivers an API and feature-set that is up-to-date with Android 5.0 参考网址Android Support...理解是大致如下图所示,如果没有AppCompat,我们开发应用在不同版本Android系统显示起来会像上面一行三个图片那样,没有统一界面风格;而如果使用了AppCompat的话,就会像下面一行三个图片那样...再来看下Toolbar,这是从AppCompat 21版本开始引入使用就像一个普通View组件一样,同时它还可以充当ActionBar,这样我们设置菜单项就会显示上面了。...ActionBar功能,默认提供了很多种元素可以放置Toolbar,其中包括导航按钮、logo图标、标题和子标题、一个或多个自定义View以及菜单项。...Theme设置为AppTheme.NoActionBar就好了 (3.2)添加Toolbar Layout文件中添加Toolbar组件,就把做一个普通View组件来使用即可 <Toolbar

86720

Android21种drawable标签大全

目前Android中有21种drawable标签,了解和利用这些标签对我们开发有很大帮助。这个文章我们对这21种标签做一个介绍,让大家有一个印象。...4.2 android:autoMirrored 设置图片是否需要镜像反转,上面提到了 android:tileModeX 设置水平方向平铺方式,这是API Level 21(Android 5.0...)才添加属性 android:tileModeY 设置垂直方向平铺方式,这是API Level 21(Android 5.0)才添加属性 android:tintMode 着色模式,也是API Level...,会覆盖上面四个属性,但API Level要求为21,即Android 5.0 子标签 如果不设置drawable属性,也可以定义drawable类型子标签,如shape等 clip 使用clip标签可以对...子标签 如果不设置drawable属性,也可以定义drawable类型子标签,如shape等 注意 必须设置level才会生效,而level能在代码中设置,ImageView.setImageLevel

2.1K20

移动开发界囚徒现身说法,审查困境与控制权探讨

为了了解关于内容更多信息,谷歌官网上发现了以下提示: 下面这句话引起了我们注意:现有应用必须指向 level 31 或者更高级别的 API,以确保正在运行高于应用目标 API 级别的 Android...着手升级 时间来到 8 月 23 日,开始将 targetSdkVersion 从 API level 30 更新到 33,并尝试 Android 模拟器中编译 / 运行这款应用。...成功运行应用并尝试了一番核心功能之后,发现新版本使用效果基本跟原先相同,也没出什么问题。准备就绪,是时候把放进 Google Play Store 了。...第二个想法则是把 targetSdkVersion 恢复到 API level 30、做个新应用版本并发布到 Play Store 。...但这同样不行,因为谷歌会弹出强制要求使用 API level 33 错误信息(这就是谷歌声明中提出,所谓 9 月 1 日之前必须对低于 level 33 应用做更新)。

10710

Android适配全面总结(二)----版本适配

我们开发中,会对不同安卓版本做适配,比如我之前做过项目中最低兼容到4.4,最高兼容是最新系统7.1,由于不同版本系统中部分API版本也不同,就要对这些API做特殊处理。...这里简单给出几点我开发中使用过一些方式,仅供参考: 一、同一个api不同版本都存在,只是api一些接口方法有变更。...(API级别26中已弃用。使用getLargeIcon(),支持更多种图标源。)...(API级别26中已弃用。请使用 IMPORTANCE_MIN 替代) STREAM_DEFAULT This constant was deprecated in API level 21....例如,如果一个应用程序先前已经请求并被授予READ_CONTACTS权限,然后请求WRITE_CONTACTS(同属于联系人一组),系统会立即授予该权限,不会再弹出权限授予询问对话框。

2.3K10

史上最优美的Android原生UI框架XUI使用指南

项目简介 XUI是一个简洁而又优雅Android原生UI框架,解放你双手! XUI可以说是花费心血最多开源项目了,目前稍微大一点项目都会选择引入。...目前XUIgithub已经拥有2.6kstar量, 如果你喜欢的话,欢迎点击star收藏!...好在在2017年某一天,接触到了QMUI,通过阅读源码,发现设计思路非常好,可以通过设置不同主题样式、组件属性等实现不同组件效果,非常灵活;除此之外,它还对UI主题风格做了较为详细制定和归类...然后,如果你context也没使用错的话,那么请查看一下当前报错设备系统版本。因为Android5.021)以下在drawable中使用?attr引用主题属性的话,也会导致R文件找不到问题。...而且同样是Android5.021)以下,如果你使用vector加载SVG图片的话,同样也会导致R文件找不到,因为Android5.021)以下系统是不支持加载SVG图片

4.1K20

安卓App开发之旅:旧手机变废为宝做一个震动App

于是,想起手机有震动功能,要是做一个震动App,或许能变废为宝? 准备 好,说干就干,于是开始了第一次安卓App开发之旅。...设计 实际开发前,理论还需要做一些设计工作,但这实在不是强项啊!界面设计就算了吧,App里就一个开关,打开就震动,关掉就停。...不过图标好歹还是要有一个,但是找了全网,没有太合适,只能在 Material Design 官网找一个图标的设计模板,自己去做一个。...SDK 就定为 API 21, Android 5.0 吧,现在用 4.x 应该不多了,5.0 API 也够用。...简单来说就是 AndroidManifest.xml 加上权限声明,然后通过 getSystemService 获取震动服务,最后,震

1.3K00

.NET平台系列13 .NET5 统一平台

.NET5.0能在许多组件中得到了极大提升。...这项工作并不简单,但其结果是降低复杂性和维护方面向前迈出了一大步,同时将所有平台功能都统一起来。   新应用程序开发可以为所有项目类型(包括类库)指定 .NET5.0 目标框架名字对象(TFM)。....NET5工作负载之间共享代码得到了简化,因为您只需要 NET5.0TFM。   ...如果您在受支持操作系统使用.NET Core 3.1,那么您应该能够大多数情况下在同一操作系统版本采用.NET 5.0。.NET5.0最重要新增功能是Windows ARM64。   ....NET5.0是最新版本。这意味着它将在.NET6.0发布后三个月内得到支持。因此,我们希望2022年2月中旬之前支持.NET 5.0。.

1.1K20

Android 6.0 权限行为变更详解

如果 minSdkVersion 设置值是 23 以下的话,直接调用上面的方法会有这种提示 Call requires API level 23 (current min is 21):.......提示说很清除了,调用这种方法是需要 API 23 ,而当前 min 是 21,也就说明你 APP 是可以运行在 Android 5.0 系统手机上面的,然而 checkSelfPermission...那么毕竟现在 Android 5.0 系统还是有很多用户量,这个时候我们应该怎么办呢?...举个例子 :比如你将你开发 APP targetSDKVersion 设置为 23 以下的话,如果在原生 Android 系统,运行时候是不需要运行时请求危险权限,因为这个特性是 API...,再举个例子:比如,小米手机 8.0 系统,你设置了 targetSDKVersion 为 22,这个时候如果是原生 Android 系统的话是不需要再动态申请权限了,但是小米还是需要,这个时候你调用

91020

2020 年 Java 程序员应该学习什么?

自 JDK 9 以来,所有这些 Java 版本都具有许多令人兴奋功能,例如文本块(多行字符串),switch 表达式,局部变量 var,API 增强,GC 改进,线程本地握手(机制优化)等,真的很高兴能在...可以肯定地说,如果你现在开始学习,很有可能在工作某个时候用到 Docker 或 Kubernetes。...无论如何,已经开始学习 Spring 5.0.0,并将保持这种势头 2020 年持续下去。如果你使用 Spring,可能是学习 Spring 5.0 最佳时机。 7....不确定是否有时间去看其他大数据技术,但是好东西和大数据可能是目前最热门技术。 总结 这就是 Java 程序员 2020 年可以学到一切?...除了以上这些技术外,肯定还有很多其他东西,你可以查找一年就像学习一门新编程语言如 Kotlin,但对来说,如果能在 2020 年实现这些目标,我会更高兴。

80810

关于React Native项目androidUI性能调试实践

启用垂直同步高亮 接下来你首先应该启用16毫秒帧区间高亮。屏幕顶端点击对应复选框: ? 然后你应该能在屏幕看到类似上图斑马状条纹。...如果Android 5.0以上版本运行,我们还需要关注Render(渲染)线程。 UI 线程 标准Android布局和绘制都在UI线程里发生。...额外:渲染线程 如果使用Android L(5.0)或者更高版本,你应该还会在你应用里看到一个渲染线程。这个线程真正生成OpenGL渲染序列来渲染你UI。...注意没有任何一个线程靠近帧边界处工作。类似这样一个应用程序就正在60FPS(帧每秒)情况下流畅表现。 如果你发现一些起伏地方,譬如这样: ?...并且,你还应该能看到一些可以指导接下来优化工作有用信息。 JS问题 如果你发现问题出在JS,在你正在执行JS代码中寻找线索。

2.9K50

Android targetsdkversioin

Api Level是个什么东西? Androidapi版本间变化可能非常大, 有时候一个 api低版本支持,到了高版本就被删除了。...可以 develop网站上看到 api level对应 Android版本, xxx.jpg 举个例子,Activity.getActionBar() xxxx.jpg 可以看到 api level...系统测试过没问题, 如果安装系统 api level高于11,则会开启兼容模式来运行app。...就像 Android 6.0引入动态权限申请, 如果你把 targetsdkversioin定位比6.0低 api level的话, 其实是不需要动态去申请权限, app安装时,系统会以兼容模式默认开启这些权限...然而问题在于, 设定 targetsdkversioin = 21(比如5.0对应 api level 21), 意味着向系统表明我们只 5.0系统测试过, 如果是运行在6.0机器而用户手动关掉所需要权限的话

36920

干货 | Elasticsearch Java 客户端演进历史和选型指南

使用 High Level Rest 客户端上工作就像在 Elasticsearch API 层(通过 HTTP 包间接工作),而Low Level REST 客户端纯粹是 HTTP 上工作,什么都得自己构造...值得注意是:7.17 版本 High Level REST 客户端可以与 8.X 版本以兼容模式运行。其实大家可能和我一样都有疑问:High Level 不香?为啥还要换?...仍需要大量维护工作。3、High Level REST 客户端没有集成 json/object 类型映射。仍需要自己借助字节缓存区实现。...如果当前是:7.X 版本且不考虑升级,那就 High Level REST 客户端。如果当前是:8.X 版本,那就 Elasticsearch Java API 客户端。...Spring 框架 Web 项目,可以使用 Spring Data Elasticsearch,但关注新版本,截止:2022-06-17,支持到:7.17.3 版本。

4.2K72

干货 | Elasticsearch Java 客户端演进历史和选型指南

较Transport 客户端,Java REST 客户端特点如下: 耦合性低; 具有更少依赖项; 应用程序更加轻量级。...使用 High Level Rest 客户端上工作就像在 Elasticsearch API 层(通过 HTTP 包间接工作),而Low Level REST 客户端纯粹是 HTTP 上工作,什么都得自己构造...值得注意是:7.17 版本 High Level REST 客户端可以与 8.X 版本以兼容模式运行。 其实大家可能和我一样都有疑问:High Level 不香?为啥还要换?...如果当前是:7.X 版本且不考虑升级,那就 High Level REST 客户端。 如果当前是:8.X 版本,那就 Elasticsearch Java API 客户端。...Spring 框架 Web 项目,可以使用 Spring Data Elasticsearch,但关注新版本,截止:2022-06-17,支持到:7.17.3 版本。

1.8K30

蘑菇街Android组件与插件化

插件化基石 -- apk动态加载 随着街业务蓬勃发展,产品和运营随时新功能新活动需求越来越强烈,经常可以听到“有个功能想周x,行不行”。行么?...当然是不行啦,新功能得发新版本啊,到时候费时费力打乱开发节奏不说,覆盖率也是个问题。苏格拉底曾经说过:“现在移动端主要矛盾是产品日益增长功能需求与平台落后发布流程之间矛盾”。...当然,作为一个靠谱程序猿,我们就是为了满足产品需求而存在(正义脸)。于是一个阳光明媚早晨,吃完公司免费早餐后,和小强、叶开,决定做一个完善Android动态加载框架。...蘑菇街采用是后者,这种方式可以有效防止各种莫名其妙 ClassCastException ,当你crash后台看到各种 A cast A错误而欲哭无泪时候,想你会喜欢这种方式。 ...经过观察发现,5.0以下Android系统,应用安装时候只认classes.dex文件,并在安装期对这个dex文件进行opt操作,生成odex文件放在/data/dalivk-cache里面。

665100

精神哥讲Crash(二): java.lang.NoSuchMethodError

SDK( API LEVEL 17) 运行环境 Android 4.0 设备( API LEVEL 14) 期望结果 正确返回activity是否已经销毁。...4.2增加,在这之前系统肯定找不到这个方法,所以4.2之前设备都会Crash!...解决方法 调用时对当前系统API LEVEL做判断,如果小于17就放弃调用 修复代码 public Boolean isActivityClose( Activity activity){...现状描述 谷歌还是比较小心,精神哥发现AndroidSDK及Android亲儿子设备,这些@DeprecatedAPI基本都保留了,谷歌最多就是置空实现或直接抛出一个非法访问异常,所以开发过程中并没有感觉到...3、@HideAPI是人家谷歌私有的,删改都不会跟你商量,你还敢用

1.4K50

Android 端相机相关开发经验总结

首先,Android系统目前已经提供了两套Camera API,其中Camera 2 API是从Android 5.0(API Level 21)开始提供。...是为Android 5.0(API level 21)及以上系统提供,Camera2Api23继承自Camera2,是为Android 6.0(API level 23)及以上系统提供。...关于Camera1和Camera2选择 下面详细说下Camera1和Camera2选择问题,实际并不是那么简单地根据API level然后选择创建对应CameraViewImpl实现子类就可以了...,如果它是Android 5.0以上系统,但是对Camera 2 API支持就是很差怎么办?...为了保证相机模块显示和工作正常,通常建议三个尺寸宽高比是一样如果比例不一致的话就可能导致图像变形,而且这个比例最好是4:3或者16:9这样比较普遍支持比例,否则输出结果千奇百怪,例如华为H60

3.8K30
领券