i am new to ionic, trying to get an apk for debugging i used the following commands inside the project directory:
ionic cordova platform add android
i did get “platforms/android” directory
and then i used:
ionic cordova build android
this is what i get after:
ionic-app-scripts build --target cordova --platform android [23:57:19] ionic-app-scripts 3.1.10 [23:57:19] build dev started ... [23:57:19] clean started ... [23:57:19] clean finished in 10 ms [23:57:19] copy started ... [23:57:19] deeplinks started ... [23:57:19] deeplinks finished in 36 ms [23:57:19] transpile started ... [23:57:27] transpile finished in 8.13 s [23:57:27] preprocess started ... [23:57:27] preprocess finished in less than 1 ms [23:57:27] webpack started ... [23:57:28] copy finished in 8.97 s [23:57:35] webpack finished in 7.63 s [23:57:35] sass started ... Without `from` option PostCSS could generate wrong source map and will not find Browserslist config. Set it to CSS file path or to `undefined` to prevent this warning. [23:57:40] sass finished in 4.83 s [23:57:40] postprocess started ... [23:57:40] postprocess finished in 28 ms [23:57:40] lint started ... [23:57:40] build dev finished in 20.79 s [23:57:44] lint finished in 3.91 s > cordova build android You have been opted out of telemetry. To change this, run: cordova telemetry on. Android Studio project detected (node:12696) UnhandledPromiseRejectionWarning: CordovaError: Failed to find 'ANDROID_HOME' environment variable. Try setting it manually. Failed to find 'android' command in your 'PATH'. Try update your 'PATH' to include path to valid SDK directory. at C:\Users\h2001\Desktop\myApp\platforms\android\cordova\lib\check_reqs.js:305:19 at _fulfilled (C:\Users\h2001\Desktop\myApp\platforms\android\cordova\node_modules\q\q.js:854:54) at self.promiseDispatch.done (C:\Users\h2001\Desktop\myApp\platforms\android\cordova\node_modules\q\q.js:883:30) at Promise.promise.promiseDispatch (C:\Users\h2001\Desktop\myApp\platforms\android\cordova\node_modules\q\q.js:816:13) at C:\Users\h2001\Desktop\myApp\platforms\android\cordova\node_modules\q\q.js:877:14 at runSingle (C:\Users\h2001\Desktop\myApp\platforms\android\cordova\node_modules\q\q.js:137:13) at flush (C:\Users\h2001\Desktop\myApp\platforms\android\cordova\node_modules\q\q.js:125:13) at _combinedTickCallback (internal/process/next_tick.js:131:7) at process._tickCallback (internal/process/next_tick.js:180:9) (node:12696) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1) (node:12696) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
but i didn’t get the promised \build\outputs\apk, what is the problem?
UPDATE: i installed android studio and updated it, still getting
UPDATE: the problem was solved, turns out i had java10 which wont work with android, simply installing java8 solved the problem
btw, i dont have android sdk installed if that makes any difference?
You have answered your own question.
To make an Android APK
- You need Java SDK 1.8.
- Android SDK with latest build tools and platforms
- JAVA_HOME & ANDROID_HOME environmental variables set correctly.
Also You need updated X-Code on a Mac to create an IPA.
Answered By – Karan Gandhi