Note that there are some explanatory texts on larger screens.

plurals
  1. POWhen building Cordova Android app, build can't find aidl
    primarykey
    data
    text
    <p>My phonegap/cordova app using Cordova 3.0 was doing just fine. Then I updated my Android SDK to 4.3 for unrelated reasons (a Titanium app to be more precise), and all of a sudden the build fails, with this error:</p> <pre><code>... -code-gen: [mergemanifest] Merging AndroidManifest files into one. [mergemanifest] Manifest merger disabled. Using project manifest only. [echo] Handling aidl files... [aidl] Found 1 AIDL files. [aidl] Compiling 1 AIDL files. BUILD FAILED /Applications/adt-bundle/sdk/tools/ant/build.xml:647: The following error occurred while executing this line: /Applications/adt-bundle/sdk/tools/ant/build.xml:653: Execute failed: java.io.IOException: Cannot run program "/Applications/adt-bundle/sdk/platform-tools/aidl" (in directory "/Users/cool/Dropbox/Workspaces/Cordova3Plus/TrueBudgetFree/platforms/android"): error=2, No such file or directory ... Caused by: java.io.IOException: error=2, No such file or directory ... </code></pre> <p>I've checked the file location, and ...</p> <pre><code>//the aidl executable isn't actually in Applications/adt-bundle/sdk/platform-tools/ //Instead, it is in a ser Applications/adt-bundle/sdk/build-tools/[sdk version]/ </code></pre> <p>There are subfolders for a few SDK versions (17.0.0 through 19.0.0, and "Android-4.3"). And each of those directories does have the aidl executable in it. </p> <p>I've tried adding the ../sdk/build-tools folder to my $PATH (Mac), that didn't help.</p> <p>I'm assuming the builder inserts the version name into the path string, but I can't really tell because I don't understand the inner workings of these build processes. All I can see, sort of, is where the path is referenced/edited.</p> <p>The build.xml at line 647/653 has this code:</p> <pre><code>&lt;echo level="info"&gt;Handling aidl files...&lt;/echo&gt; &lt;aidl executable="${aidl}" framework="${project.target.framework.aidl}" libraryBinAidlFolderPathRefid="project.library.bin.aidl.folder.path" genFolder="${gen.absolute.dir}" aidlOutFolder="${out.aidl.absolute.dir}"&gt; &lt;source path="${source.absolute.dir}"/&gt; &lt;/aidl&gt; </code></pre> <p>I've found <a href="https://groups.google.com/d/msg/sqlcipher/of0alS-ujy0/dxbY0qqeFJ8J" rel="nofollow">this comment</a> which suggests that the aidl file gets moved around once in a while with a new SDK. </p> <p>I've tried reverting to Android SDK 4.2, but that hasn't helped.</p> <p>What could be the cause here (and more importantly: the solution)?</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload