接下来要来讲些Android 的部分,因为种种因素所以必须处理一些android专案,但因为我没有正规的学过Android开发,所以全部都是自学,学习的顺序也是属於头痛医头脚痛医脚的模式,本篇主要是纪录我更新API版本的部分,原本专案的API 为 28,预计将其更新至API 30,但因为我不太熟悉的原因,会分两阶段进行,先升级至API 29,再升至API 30,中间会一并更新的也会做个纪录。
我电脑原本使用的Android Studio 版本:
Android Studio是用Gradle来建构专案的,而build.gradle是以groovy语言写的,
接着我们开启专案,并找到build.gradle(:app)档案,此档案有点类似建构专案的脚本,
把各种关於如何编译APP等等的设定全写进档案里,以此执行
找到下方的代码,将其更新为API 29
compileSdkVersion 28
defaultConfig {
applicationId "com.test.project”
minSdkVersion 19
targetSdkVersion 28
versionCode 18
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
vectorDrawables.useSupportLibrary = true
multiDexEnabled true
maxSdkVersion 28
}
buildToolsVersion '28.0.3'
Step1:
将以下版本号改为29
compileSdkVersion 29
targetSdkVersion 29
maxSdkVersion 29
buildToolsVersion '29.0.3’
编译後没有出现错误,继续更新为API 30
Step2:
compileSdkVersion 30
targetSdkVersion 30
maxSdkVersion 30
buildToolsVersion ’30.0.3’
编译成功,但运行APP时却闪退
查看logcat看到错误讯息Rejecting re-init on previously-failed class
,下方皆是第三方套件的错误讯息
於是查找AndroidManifest.xml中依赖库中的此套件
implementation 'com.squareup.okhttp3:okhttp:4.0.1'
将其更新为
implementation 'com.squareup.okhttp3:okhttp:4.9.1’
然後点击上方出现的提示”Sync Now”,同步一下
接着我们再执行编译,确认APP运行正常,即完成更新
游戏示意 swift - tab功能分页 游戏页面排完版了 接下来就建立下方蓝色的分页吧 分页的功能...
「撰写完 dockerfile → 转成映像档 → 建立容器」的流程虽说不复杂,但随着要建立的容器一...
tags: python, iron_man title: PyDay12 现代的人可以快速得产出...
前言 这篇文章适合给那些要处理Legacy System(旧系统)的朋友们看,如果你们团队有系统的...
回圈 python常见的回圈有for和while回圈,而python是透过缩排(ident)定义回圈...