我已经看了看文档与摇篮建设,但我仍然不知道什么之间的差异compileSdkVersion,并targetSdkVersion为.
它只是说:
该
compileSdkVersion属性指定编译目标.
那么,"汇编目标"是什么?
我看到两种可能的解释方式:
compileSdkVersion在构建应用程序所使用的编译器的版本,同时targetSdkVersion是"API级别的应用程序的目标".(如果是这种情况,我认为compileSdkVersion必须大于或等于targetSdkVersion?我看到之前已经问过这个问题,但是一个答案只引用了文档,这对我来说是不清楚的.
我想从命令行设置Android dev环境,遇到以下问题:
wget http://dl.google.com/android/android-sdk_r22.0.5-linux.tgz
Run Code Online (Sandbox Code Playgroud)
解压缩文件后,运行
tools/android update sdk --no-ui
Run Code Online (Sandbox Code Playgroud)
但是,跑步太慢了
Fetching https://dl-ssl.google.com/android/repository/addons_list-2.xml
Run Code Online (Sandbox Code Playgroud)
结果是文件夹构建工具中没有任何内容,我想要的是aapt和apkbuilder,因为我想在没有ant的情况下从命令行构建apk.
我使用 android 的新命令行工具,因为旧的 android sdk-tools 存储库不再可用。所以我改变了我的 gitlab-ci 来加载 commandlintools。但是当我尝试运行它时,出现以下错误:
Warning: Could not create settings
java.lang.IllegalArgumentException
at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.<init>(SdkManagerCliSettings.java:428)
at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.createSettings(SdkManagerCliSettings.java:152)
at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.createSettings(SdkManagerCliSettings.java:134)
at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:57)
at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48)
Run Code Online (Sandbox Code Playgroud)
我已经尝试过手动执行这些命令,但我遇到了同样的错误。此外,如果我运行sdkmanager --version,也会发生同样的错误。我的 gitlab-ci 看起来像:
image: openjdk:9-jdk
variables:
ANDROID_COMPILE_SDK: "29"
ANDROID_BUILD_TOOLS: "29.0.3"
ANDROID_SDK_TOOLS: "6200805"
before_script:
- apt-get --quiet update --yes
- apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1
- wget --quiet --output-document=android-sdk.zip https://dl.google.com/android/repository/commandlinetools-linux-${ANDROID_SDK_TOOLS}_latest.zip
- unzip -d android-sdk-linux android-sdk.zip
- echo y | android-sdk-linux/tools/bin/sdkmanager "platform-tools" "platforms;android-${ANDROID_COMPILE_SDK}" >/dev/null
#- echo y | android-sdk-linux/tools/bin/sdkmanager "platform-tools" …Run Code Online (Sandbox Code Playgroud) android android-build gitlab-ci android-sdk-manager android-studio-3.6
安装失败,消息无效文件:K:\ project\app\build\intermediates\split-apk\with_ImageProcessor\debug\slices\slice_0.apk.通过卸载现有版本的apk(如果存在)然后重新安装,可能会解决此问题.
警告:卸载将删除应用程序数据!
要卸载现有应用程序吗?
我在android studio 2.3 beta 3中运行我的项目.
编辑:(aug-2016)
这个问题是从2013年11月开始的(当Android Studio仍处于开发者预览模式时),
当前(AS v2.2,2016年8月)在安装期间,AS要求选择SDK文件夹(或默认安装),它会自动应用于您正在打开的项目.
这意味着任何可能的解决方法或修复都无关紧要,因为问题不再可再生.
原始问题:
我们这个项目有几个已经配置好的模块,并且使用包装器在另一台开发者PC上正确执行.我将完整的git子模块克隆到我的机器中.
下面是我的命令行的直接打印:
$ ./gradlew
FAILURE: Build failed with an exception.
* Where:
Build file '/home/budius/project_name/ActionBar-PullToRefresh/library/build.gradle' line: 1
* What went wrong:
A problem occurred evaluating project ':ActionBar-PullToRefresh:library'.
> SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 6.378 …Run Code Online (Sandbox Code Playgroud) 我一直试图让ActionBarSherlock工作并遇到一些问题.我遇到的一个问题是在尝试构建它时出现以下消息:
Plugin with id 'android-library' not found
Run Code Online (Sandbox Code Playgroud)
特别:
D:\Projects\Android\actionbarsherlock>D:\Projects\Android\gradlew --info build
Starting Build
Settings evaluated using empty settings script.
Projects loaded. Root project using build file
'D:\Projects\Android\actionbarsherlock\build.gradle'.
Included projects: [root project 'actionbarsherlock']
Evaluating root project 'actionbarsherlock' using build file
'D:\Projects\Android\actionbarsherlock\build.gradle'.
FAILURE: Build failed with an exception.
* Where:
Build file 'D:\Projects\Android\actionbarsherlock\build.gradle' line: 1
* What went wrong:
A problem occurred evaluating root project 'actionbarsherlock'.
> Plugin with id 'android-library' not found.
Run Code Online (Sandbox Code Playgroud)
我把它视为一个单独的线程中的ABS问题,所以在这里我很好奇如何解决一般问题:
Plugin with id 'android-library' not found
Run Code Online (Sandbox Code Playgroud)
这是build.gradle:
apply …Run Code Online (Sandbox Code Playgroud) 我正在将我的一个应用程序转换为Gradle,并希望使用新的构建风格功能来获得付费和免费的广告风格.
我只希望基于广告的版本依赖于admob SDK.
我的构建文件如下所示:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
}
}
apply plugin: 'android'
repositories {
mavenCentral()
}
android {
compileSdkVersion 18
buildToolsVersion "18.0.1"
defaultConfig {
minSdkVersion 10
targetSdkVersion 18
}
productFlavors {
Pro {
packageName "de.janusz.journeyman.zinsrechner.pro"
}
Free {
dependencies {
}
}
}
}
dependencies {
compile 'com.android.support:support-v4:18.0.+'
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
compile fileTree(dir: 'libs', include: '*.jar')
}
Run Code Online (Sandbox Code Playgroud)
有没有办法在免费产品风格中配置依赖项,使其拥有自己的libs文件夹,该文件夹与包含两种风格的通用库的主libs文件夹合并?
如果可能,我该如何定义此文件夹?
我想从mavencentral使用我的lib的主版本.
是否可以在android gradle中将git存储库声明为依赖?
当尝试从git://github.com/osmdroid/osmdroid构建OpenStreetMapView时,我收到此错误:
failed to find target with hash string android-23: D:\Users\myusername\AppData\Local\Android
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题?以前类似的问题建议检查android 23是否未安装,但在我的情况下,确实如此.
以下是一些相关信息:
ANDROID_HOME是 D:\Users\myusername\AppData\Local\Android\sdk
D:\Users\myusername\AppData\Local\Android\sdk\platforms\ 包含目录\ android-23 \,(以及android-19,android-21,android-22,android-MNC)
的build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "org.osmdroid.example"
minSdkVersion 8
targetSdkVersion 23
versionCode 16
versionName "4.4-SNAPSHOT"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
packagingOptions {
exclude 'META-INF/LICENSE'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/NOTICE'
}
lintOptions {
abortOnError false
}
}
dependencies {
compile 'android.support:compatibility-v4:23+'
compile project(':osmdroid-android')
//compile 'org.osmdroid:osmdroid-third-party:4.4-SNAPSHOT'
}
Run Code Online (Sandbox Code Playgroud)
我尝试将targetSdkVersion和compileSdkVersion更改为22.这会导致错误消息更改为"android-22"而不是"android-23".
我更新后经常出现内存问题buildToolsVersion '22.0.1',buildToolsVersion '23.0.1'我真的很困惑,不知道如何解决这个问题,因为这个错误仅显示buildTools版本23.0.1.而当我改变它时它工作正常22.0.1.请帮我.我发布的错误如下,
Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Java heap space
Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Java heap space
Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: GC overhead limit exceeded
Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Java heap space
Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: GC overhead limit exceeded
Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Java heap space
Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.transform.api.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_25\bin\java.exe'' finished with non-zero exit …Run Code Online (Sandbox Code Playgroud) android build-tools android-build android-studio build.gradle
android-build ×10
android ×9
gradle ×4
build-tools ×2
build.gradle ×2
sdk ×2
aapt ×1
gitlab-ci ×1
gradlew ×1