web-dev-qa-db-ja.com

ionic build Android failure-タスクprocessDebugResourcesの実行に失敗しました

Mac Yosemiteを使用しています。 Android platformのビルドを実行すると次のエラーが発生します:

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':processDebugResources'.
> com.Android.ide.common.internal.LoggedErrorException: Failed to run command:
    /Users/sairamk/Development/Android-sdk-macosx/build-tools/22.0.1/aapt package -f --no-crunch -I /Users/sairamk/Development/Android-sdk-macosx/platforms/Android-22/Android.jar -M /Users/sairamk/projects/dummy_app/platforms/Android/build/intermediates/manifests/full/debug/AndroidManifest.xml -S /Users/sairamk/projects/dummy_app/platforms/Android/build/intermediates/res/debug -A /Users/sairamk/projects/dummy_app/platforms/Android/build/intermediates/assets/debug -m -J /Users/sairamk/projects/dummy_app/platforms/Android/build/generated/source/r/debug -F /Users/sairamk/projects/dummy_app/platforms/Android/build/intermediates/res/resources-debug.ap_ --debug-mode --custom-package com.ionicframework.bcgsandbox553389 -0 apk --output-text-symbols /Users/sairamk/projects/dummy_app/platforms/Android/build/intermediates/symbols/debug
  Error Code:
    1
  Output:
    /Users/sairamk/projects/dummy_app/platforms/Android/build/intermediates/res/debug/xml/config.xml:59: error: Error parsing XML: unbound prefix

IOSのビルドは完全に正常に実行されます。 Android SDKをインストールし、Android_HOMEおよびAndroid_SDK_ROOTシステム変数を構成しました。

また、プラットフォームを削除して再度追加し、次を使用してクリーンなプラットフォームフォルダを作成しようとしました:

ionic platform remove Android
ionic platform add Android

でもダメ。

インストールしたAndroid SDKビルドツールバージョン-19.1,20,21.1.2および22.0.1

AndroidManifest.xml設定:

 <uses-sdk Android:minSdkVersion="16" Android:targetSdkVersion="22" />
23
Sairam Krish

この問題は、phonegapのxml名前空間(xmlns:gap = "http://phonegap.com/ns/1.0")をconfig.xmlに追加することで解決されます。

追加後:

<widget id="com.ionicframework.yourpackagename" 
version="0.0.1" 
xmlns="http://www.w3.org/ns/widgets" 
xmlns:cdv="http://cordova.Apache.org/ns/1.0"
xmlns:gap="http://phonegap.com/ns/1.0">

同様の問題に直面している人の助けになることを願っています。

24
Sairam Krish

これをデバッグするための詳細情報を取得するには、./platforms/Android/フォルダーおよび実行:

Macユーザー:

gradlew --info build clean

Linuxユーザー(Pierreに感謝):

./gradlew --info build clean

Windowsユーザー:

gradlew.bat --info build clean

これにより、より詳細になります。

私の問題はこの方法で解決され、ファイル名にスペースが含まれるプロジェクトフォルダーに誤ってドロップされたファイルが見つかりました。

34
CapeCoder

from ionicフォーラム

「イオンリソース」サービスエラーが原因でした。

ここで「イオンリソース」コマンドを実行し、/ resources/Android/splashフォルダーを調べて確認し、これらのpngファイルをすべてクリックして開いたところ、いくつかの写真が壊れていることがわかりました(半分に見えます)。

そのため、これらの壊れたpngファイルを(同じフォルダにある)「通常の」pngファイルに置き換えてから、「イオンビルド」コマンドを実行すると、エラーが消えます。

https://forum.ionicframework.com/t/ionic-Android-build-problem/29131/7?u=bleuscyther

3
bleuscyther

しかし、私の場合、以下の行を削除することで解決しました

    <gap:plugin name="nl.x-services.plugins.socialsharing" />

私のconfig.xmlファイルから

2
newari

Windowsで開発している場合、「パス名」が原因である可能性があります。 Windowsでは、260文字より長いパス名は許可されていません。したがって、短くすることで解決できる場合があります。

1
Alperzkn

同様の問題があります。回避策を見つけるために、新しい空のプロジェクトを作成しました。コンパイルとエミュレーションは良好でした。 wwwフォルダーに問題があることがわかりました。いくつかの倍数テストの後、私の写真の1つは「Clément.png」という名前になりました。「Clement.png」を得るためにアクセントを削除すると、問題が解決しました。

1
C0ZEN

はい、以下の行を削除した後にビルドが成功しました

<gap:plugin name="nl.x-services.plugins.socialsharing" />

config.xmlから

0
lakshman_dev

Vue.jsとWebpackを使用して製品ファイルを生成し、出力に* .gzファイルが含まれています。これはCordovaのwww /に入れると問題でした。

0
Kaspi

理由はわかりませんが、Androidプラットフォームが機能しませんでした。

ionic platform rm Android
ionic platform add Android
0
SylvainAr

他の一部の人と同様に、私のエラーは、いくつかのひどい隠しファイルが原因で段階的に作動します。

私の場合、それは特別な「アイコン」でした。 OSXがカスタムアイコン(Googleドライブ、Dropboxなど)を持つ任意のフォルダー内に作成するファイル。ファイルには実際には「アイコン\ r」という名前が付けられており、Java/gradleが「\ r」(または予期しないエスケープされていない文字)につまずいていると思います。

解決策は、偽の「アイコン」をすべて無効にすることでした。私のプロジェクトディレクトリからのファイル:

# note that this is the syntax for zsh. 
# If you're using bash test out the pattern first before including '-delete'
find ~/code/myproject/ -name Icon$'\r' -delete
0
Marcel Chastain

私にとっては、アセットフォルダー内にあった画像の名前の長さが長いことが判明しました。

注意してください。これらの画像を削除した後も、同じエラーが表示されていました。その理由は、画像がwwwフォルダー内に保持されているためです。そのフォルダーを削除して動作しました!

0
m.spyratos

きれいなCordova上のArch Linuxでこの問題が発生しました。これをデバッグするために、@ CapeCorderの回答に従いましたが、これにはzlibライブラリがないことがわかりました。簡単にインストール

Sudo pacman -S lib32-zlib

そしてうまく動作します;)

0
Darkowic

私の場合、それはpushwooshプラグインでした。

<gap:plugin name="pushwoosh-phonegap-plugin">

プラグインを削除する必要はありません。前回動作したプラグインのバージョンを設定するだけです。これは私のために働いています。

<gap:plugin name="pushwoosh-phonegap-plugin"  spec="7.0.4" source="npm"/>
0
bCliks