I'm starting to develop and android app using Cordova 5.0.0 (cordova -v prints 5.0.0), and testing it on a Moto Razr D1 with Android 4.1.2. Under Windows 7, btw.
cordova build
and manually copying the platforms/android/build/output/apk/android-degug.apk to the SD and installing works fine.
cordova emulate android
runs fine on emulator with android version >4.1.2
cordova run android
builds successfully, says using apk platforms/android/build/output/apk/android-debugger.apk, which seems ok, installing app, launching and LAUNCH SUCCESS. however as you can see in this screenshot
Razr Screenshot
This "WALLPAPER/MANAGE/SETTINGS" thing happens, and that's it.
If I execute:
cordova emulate android
On an emulator with Android 4.1.2 Jelly, an equal output
BUILD SUCCESSFUL
Total time: 6.352 secs
Built the following apk(s):
C:\android\Some\platforms\android\build\outputs\apk\android-debug.apk
Installing app on emulator...
Using apk: C:\android\Some\platforms\android\build\outputs\apk\android-debug.apk
Launching application...
LAUNCH SUCCESS
same "WALLPAPAER/MANAGE/SETTINGS", here's another screenshot Emulator Screenshot
Any ideas how to solve this issue? Thanks in advance...
PS: If I've installed the apk previously, the Razr will startup the old version, instead of the WALLPAPER/MANAGE/SETTINGS thing. So I have to uninstall it before trying to run the cordova run commands.
I met the same problem (Cordova "hello world" app won't display) and found a way to pass through it (but I don't really understand the underlying causes).
Problem seemed to occur when installing the apk. On Cordova 5.0.0, adb commands to install the apk can be found at line 101 of file platforms\android\cordova\lib\device.js (and at line 311 of platforms\android\cordova\lib\emulator.js for cordova emulate android):
adb -s ' + resolvedTarget.target + ' install -r -d "' + apk_path + '"
Current command returns to me: "Error: unknown option -d"!
If you simply delete the "-d" option, applications run normally with cordova run android.
The
-d
is supposed to come directly afteradb
(as in--device
) instead of after install. So you can just move it there instead of removing it.
Plus, here is the opened issue on apache cordova issue tracker
Here are a couple of things to check and be aware of, in case you didn't know:
cordova -v
won’t necessarily match the platform version cordova platform
If you've updated to the latest version of cordova-android sdk, please ensure you read through the releasenotes.md: https://github.com/apache/cordova-android/blob/master/RELEASENOTES.md
I'm not sure what SD is but I've installed my apps via
adb install <path_to_apk>
After comparing and checking your uploaded apk to your device, which I believe is easier to debug than the emulator, start up Android Debug Bridge with logcat:
adb -d logcat
If you prefer debugging with logcat through emulator, then:
adb -e logcat
There are extra debug flags to reduce the verbosity here: http://developer.android.com/tools/debugging/debugging-log.html. You'll need to adjust the filter spec to however you like, such as this: adb logcat ActivityManager:I MyApp:D *:S
. I prefer to use adb logcat *:D
to capture almost all debugging messages but reduce the verbosity slightly.
Hopefully, upon connection and startup of logcat you'll be able to catch what errors may be happening to cause your issue.
EDIT: Here's another method to do device debugging via chrome browser developer tools: https://developer.chrome.com/devtools/docs/remote-debugging
In general, here are the steps from the above link:
Requirements: Chrome 32 or later, USB cable to connect to Android device, browser debugging requires Android 4.0+, app debugging requires Android 4.4+
There is more information in the remote-debugging link above regarding live screencasting, proxy setup, port forwarding, and virtual host mapping.
For those using Cordova 6.1.1 and having similar problem of not opening/installing the app, what worked for me was to run ionic emulate android
once to open the android emulator with a home screen. Then, in another terminal window run again ionic emulate android
which installed the application on the already opened emulator and everything worked normally.
Found similar problem in here: https://forum.ionicframework.com/t/ionic-serve-works-correctly-ionic-emulate-android-just-displays-android-emulator-home-screen/53524/6
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With