- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我用我的手机在 Api 28 上开发了我的应用程序,从来没有遇到任何问题,现在我的应用程序已经完成,所以我构建 apk 来测试它,但在每部非 Android 9 (Api < 28) 的手机上安装都会失败
使用 Api 27 的手机上的结果是“‘theApp’已正常工作”
compileSdkVersion 和 targetSdkVersion 为 28,minSdkVersion 为 21,构建正常,但即使 Api 为 21 < xx < 28,它也不起作用
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
defaultConfig {
applicationId "com.example.penduleechecs"
minSdkVersion 21
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
implementation 'com.android.support:design:28.0.0'
testImplementation 'junit:junit:4.12'
// androidTestImplementation 'com.android.support.test:runner:1.0.2'
// androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
2019-06-19 16:17:43.020 966-966/com.example.penduleechecs E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.penduleechecs, PID: 966
java.lang.RuntimeException: Canvas: trying to draw too large(149743944bytes) bitmap.
at android.view.DisplayListCanvas.throwIfCannotDraw(DisplayListCanvas.java:229)
at android.view.RecordingCanvas.drawBitmap(RecordingCanvas.java:97)
at android.graphics.drawable.BitmapDrawable.draw(BitmapDrawable.java:529)
at android.widget.ImageView.onDraw(ImageView.java:1367)
at android.view.View.draw(View.java:19192)
at android.view.View.updateDisplayListIfDirty(View.java:18142)
at android.view.View.draw(View.java:18920)
at android.view.ViewGroup.drawChild(ViewGroup.java:4236)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)
at android.support.constraint.ConstraintLayout.dispatchDraw(ConstraintLayout.java:2023)
at android.view.View.draw(View.java:19195)
at android.view.View.updateDisplayListIfDirty(View.java:18142)
at android.view.View.draw(View.java:18920)
at android.view.ViewGroup.drawChild(ViewGroup.java:4236)
at android.support.design.widget.CoordinatorLayout.drawChild(CoordinatorLayout.java:1246)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)
at android.view.View.updateDisplayListIfDirty(View.java:18133)
at android.view.View.draw(View.java:18920)
at android.view.ViewGroup.drawChild(ViewGroup.java:4236)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)
at android.view.View.updateDisplayListIfDirty(View.java:18133)
at android.view.View.draw(View.java:18920)
at android.view.ViewGroup.drawChild(ViewGroup.java:4236)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)
at android.view.View.updateDisplayListIfDirty(View.java:18133)
at android.view.View.draw(View.java:18920)
at android.view.ViewGroup.drawChild(ViewGroup.java:4236)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)
at android.view.View.updateDisplayListIfDirty(View.java:18133)
at android.view.View.draw(View.java:18920)
at android.view.ViewGroup.drawChild(ViewGroup.java:4236)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)
at android.view.View.updateDisplayListIfDirty(View.java:18133)
at android.view.View.draw(View.java:18920)
at android.view.ViewGroup.drawChild(ViewGroup.java:4236)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4022)
at android.view.View.draw(View.java:19195)
at com.android.internal.policy.DecorView.draw(DecorView.java:788)
at android.view.View.updateDisplayListIfDirty(View.java:18142)
at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:669)
at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:675)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:783)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:2992)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2806)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2359)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1392)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6752)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:911)
at android.view.Choreographer.doCallbacks(Choreographer.java:723)
at android.view.Choreographer.doFrame(Choreographer.java:658)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:897)
at android.os.Handler.handleCallback(Handler.java:790)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6494)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
最佳答案
这可能是由于图像分辨率造成的。您尝试使用的图像可能位于低分辨率文件夹中。尝试将图像或位图移动到下一个更高分辨率的图像源。
例如,如果您的图像位于 hdpi 中,请将其移动到 xhdpi 文件夹中。最好的方法是生成/导入资源作为图像/vector 资源,以便将其分配到不同分辨率的各个文件夹中。
如果您生成一个 apk,这会增加 apk 的大小。在这种情况下,请尝试为不同的分辨率生成多个apk。
关于java - 无法在 <28 Api 上运行为 Api 28(使用 minSdk 21)制作的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56669907/
给定 packageinfo 和 applicationinfo 对象,有没有办法直接拉取另一个安装的应用程序的 minsdk 值?或者无法直接提取 list 并解析它? 最佳答案 这是可能的。您必须
我读到我的应用程序将能够在最低 SDK 版本上运行,在本例中为 16: android { compileSdkVersion 23 buildToolsVersion "23.0.2
查看我的应用在 Google Play 控制台上的报告,我可以看到,在我显式配置我的 build.gradle 包含 minSdkVersion 19 的文件。据我所知,这些版本具有不同的 API 编
我无法在官方文档中找到它,是否有关于新百分比支持库的 minSDK 的任何信息? 最佳答案 您可以查看您的sdk文件夹中的aar文件。 在 AndroidManifest.xml 中,您可以找到 mi
我最近才开始接触 Android 开发。我觉得这是一个非常愚蠢的问题,但无论如何我都会开枪,因为我已经花了一个小时在这上面了。我目前正在尝试在我的设备上运行一个项目,而 Android Studio
在 android studio 中,我将 AndroidManifest.xml minSdk 更改为 API 12,但仍然出现错误,我的样式最低要求是 API 11,而我的当前设置 API 是 8
我已经发布了an app在市场上将 minSDK 设置为 4 (Android 1.6),但现在我想发布一个更新,其中包含 1.6 中不可用的功能,因此我需要更高的 minSDK。 所以,我的问题是:
我已经发布了an app市场上的 minSDK 设置为 4 (Android 1.6),但现在我想发布一个 更新,其功能在 1.6 中不可用,所以我需要更高的 minSDK. 所以,我的问题是:运行
我有 Android Studio 构建问题。 仅当更改 minSdk=29 并出现以下错误时,构建才会失败。 (可以使用 minSdk=28 ) android { compileSdkVe
我已经为搭载 Android 7.0 的设备开发了一个 Android 应用程序。 现在我必须使用装有 Android 4.2.2 的旧设备测试此应用程序。 Android Studio 在尝试部署时
嗯,我认为这没有得到很好的解释,现在我有点困惑。来自 this链接: Compile With is the platform version against which you will compi
我成功地使用最多 20 个 sdk 构建了项目,但是当我尝试构建时: minSdkVersion 21 targetSdkVersion 21 我得到一个错误: :project:preDexDebu
当我尝试使用以下命令创建 phonegap 项目时; phonegap create myapp --id com.apps.myapp --name myapp 我收到以下错误; Manifes
我在 Google Play 中有一个应用,目前的 min-sdk 为 8,我打算将其升级到 min-sdk 为 14。 我已经知道“现有”用户(sdk 8 的设备)将无法收到更新通知(基于 Goog
我们在 playstore 上有一个 minSdk 版本为 15 的应用程序,我们在 api 18 及以下版本的活跃用户不到 0.7%。所以我们计划将 minSdk 版本增加到 19。我尝试将 min
当我创建使用 Google map API v2 的项目时,这条线有问题。 GoogleMap map = ((MapFragment) getFragmentManager().findFragme
我想在不使用渲染脚本的情况下模糊 android 中图像的特定部分。我正在使用 minSdkVersion 14。我想像图像处理应用程序一样动态地使图像模糊。动态意味着应该有一个可移动的 View 在
有人可以向我解释一下项目目标和最小 SDK 之间的区别吗?我希望我的应用程序能够在 Donut 设备上运行,而我构建的目标为 7 的 APK 运行良好。当我在 4 (1.6) 的 Android li
在 eclipse 3.5 中创建新的 android 项目时,我选择了 Android 2.1 Update1 作为构建目标。但是我忘了给迷你SDK版本。现在,当构建项目时,它会发出警告消息“警告:
我已经创建了tensorflow Android应用程序,并且应用程序在 Lollipop 版本上仍然运行完美,我在min sdk Lollipop 上构建了这个应用程序,并将其测试到棉花糖和牛轧糖中
我是一名优秀的程序员,十分优秀!