ionic pro包失败:无法安装android SDK Platform 26

Posted

技术标签:

【中文标题】ionic pro包失败:无法安装android SDK Platform 26【英文标题】:ionic pro package failure: Failed to install android SDK Platform 26 【发布时间】:2017-09-28 00:34:22 【问题描述】:

我正在使用新的 Ionic Pro。我已将我以前工作的 ionic 应用程序迁移到新的 Pro 服务。我现在能够成功地将我的代码推送到我的 ionic pro git repo 并且我可以在仪表板上看到构建日志。构建成功完成。完成后,我导航到所述构建的“包”选项卡。我将我的包配置为编译 platform=Android version=Release Security Profile=Android Release 安全配置文件。

此时的输出日志在安装过程中移动并获得以下控制台输出。

 BUILD SUCCESSFUL

然后构建过程似乎启动了一个 Gradle 守护进程并最终以这个输出结束

The Task.leftShift(Closure) method has been deprecated and is scheduled to 
be removed in Gradle 5.0. Please use Task.doLast(Action) instead.
at 

build_dczd6dp0q9phbzjp0lgrh3ndj.run(/usr/src/app/platforms/android/build.gradle:142) 文件 /home/gitlab-runner/.android/repositories.cfg 无法加载。 在 /opt/android- 中检查包 Android SDK Platform 26 的许可证 SDK/许可证 已接受包 Android SDK Platform 26 的许可。 准备“安装 Android SDK 平台 26”。 警告:无法读取或创建安装属性文件。

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring root project 'android'.
> Failed to install the following SDK components:
  [Android SDK Platform 26]
  The SDK directory (/opt/android-sdk) is not writeable,
  please update the directory permissions.

* 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: 33.48 secs
Error: /usr/src/app/platforms/android/gradlew: Command failed with exit code 
1 Error output:
FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring root project 'android'.
> Failed to install the following SDK components:
  [Android SDK Platform 26]
  The SDK directory (/opt/android-sdk) is not writeable,
  please update the directory permissions.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --
debug option to get more log output.
Failed to upload apk to storage please retry your build.
Running after script...
$ clean-up
Cleaning up files...
Successful clean up
ERROR: Job failed: exit status 1

我不清楚这个错误是什么意思,或者我如何使用 ionic pro 解决它。该构建在本地为我工作。

以下是我的离子信息

    @ionic/cli-utils  : 1.10.2
    ionic (Ionic CLI) : 3.10.3

global packages:

    Cordova CLI : 7.0.1

local packages:

    @ionic/app-scripts : 2.1.4
    Cordova Platforms  : android 6.2.3 ios
    Ionic Framework    : ionic-angular 2.3.0

System:

    Node : v7.5.0
    npm  : 4.1.2
    OS   : Windows 10

【问题讨论】:

【参考方案1】:

TLDR

以下是临时解决方案:

将项目根目录下 package.json 文件中的 cordova-android 依赖项更改为

"cordova-android": "~6.2.3"

然后推送到 ionic master。注意 - 在 config.xml 中更改 android 引擎似乎无法解决问题

问题

这里的问题是cordova-android 6.3.x 使用Android-26。 Ionic Pro Package 似乎还没有在他们的包服务中提供 Android 26。因此,临时解决方案是将 cordova-android 降级到使用 Android-26 的 6.2.3。很可能以下文件配置如下:

config.xml

<engine name="android" spec="^6.2.3" />

package.json

"cordova-android": "^6.2.3",

两个配置中的 ^ 指定使用插件的最新 6.X.X 版本,在本例中为 6.3.X。将 ^ 更改为 ~ 指定使用最新的 6.2.X。在 config.xml 中进行更改并不能解决问题,因为我认为这是一个 Ionic Pro 包构建问题,其中 Ionic Pro 包引用 config.js 中指定的 Cordova-android 版本来启动确定要使用的 android sdk 版本。这就是为什么需要在package.json中更改cordova-android版本的原因,暂时将android sdk版本降级到25,直到Ionic Pro更新他们的服务以支持android sdk 26

【讨论】:

我爱你,我想和你生孩子。感谢您的回复。

以上是关于ionic pro包失败:无法安装android SDK Platform 26的主要内容,如果未能解决你的问题,请参考以下文章

Ionic pro 构建失败并出现错误 Xcode 9 未提供配置文件

Ionic Cordova 构建失败并出现错误无法应用插件

Ionic 上的任务“:processDebugResources”执行失败

Ionic build android 失败 - 无法解析配置“:_debugCompile”的所有依赖项

安装 facebook-connect 插件后 Ionic 构建失败

ionic cordova build android - 失败