Hot Code Push doesn't work on device in Meteor - android

I'm starting with mobile development with Meteor and currently facing this problem: when running meteor run android-device, any changes made aren't reflected on device, as they were supposed to be.
The project I'm running is the default one - no additional packages or plugins installed. My Meteor version is 1.0.3.1 running on Ubuntu 14.0.4 with only the android platform installed. The device I'm using is a lovely Nexus 4.
Although it doesn't work on device, the Hot Code Push works like a charm on both simulator and browser.
Any clues what is going on? I appreciate any help.

Related

chrome inspector, remote debugging no longer works properly on my mobile app

I have built a progressive web app using Cordova/Ionic. I have been using dev-tools to troubleshoot and analyze my apps inner workings for the better part of 3 years now. In the last few weeks however, i think since Chrome updated to v70+, dev-tools can no longer properly connect and/or manage the app running on my external device (several different test phones).
I have 4 Android test phones, and the same or almost the same issues are happening with dev-tools when connected to each device.
desktop keyboard and mouse do not work anymore - I can't use either to interact with the app on the phone anymore. As well, on some
phones I can't use the element inspector (while on others that does
work). But regardless of phone, I can't use the desktop mouse to
click on app buttons in the web-view. Keyboard does not work on any
of the devices either.
Often, even the native buttons in the app (directly on the phone) won't work if dev-tools has been opened to look at the app. If they
do work, you press the button and like 10-15 seconds later the app
finally responds.
When dev-tools is opened and connected to the device app, the response time of the apps is now extremely slow as well. Sometimes
the app just crashes or I get messages saying "app not responding,
wait or close?"
If I disconnect the phones from the desktop, and/or don't run dev-tools on the app, the app works and responds just fine. Something
specific to dev-tools is causing all these problems.
The different phones have versions 5.1, 6.1.1 and 7.1 running on them for testing purposes. Again, dev-tools worked just fine until a few weeks ago. I recall various small issues impacting performance and web-view rendering in dev-tools, and now all of the above is impacting my ability to troubleshoot and analyze my app (developing).
My environment:
Cordova CLI: 8.0.0
cordova-android: 7.1.1
Gulp version: CLI version 3.9.1
Gulp local:
Ionic Version: 1.3.4
Ionic CLI Version: 1.7.14
Ionic App Lib Version: 0.7.0
OS: Windows 7 SP1
Node Version: v6.10.3
Chrome: Version 70.0.3538.102 (Official Build) (64-bit)
I can't be certain, but I think all these issues began with Chrome updated itself to v70.+ On a side note, my app uses the "webview-plus" plugin....its an older plugin that enables certain inspection features and UI rendering. I removed it to see if maybe it was conflicting with dev-tools, but all the same problems still persisted.
I have the same issue, it worked fine some months ago, but it is now broken.
As a workaround, I tried to disable screencast, restart the app and then restart devtools and it worked!
Hope this helps!
The real problem is the latest android webview. All the element selection and mouse click doesn't work in latest android webview.
So, uninstall the android webview from Google Play store.
Download the older android webview version around 60
install it via adb with -r flag
adb install -r "/path/to/apk/com.google.android.webview_60.0.3112.78.apk"
This is a workaround until it is fixed in the latest webview.

Meteor Android app built on linux does not connect to remote server

I am relatively new to android+meteor+linux development and recently am facing very stange issue which I can not locate which of the 3 above is connected to.
So I have a simple setup where I have 3 EC2 instances on amazon. 1 as a build server(based on parameters it updates one of the web servers), 1 as a development web server and 1 as a release web server. Development and release instances are identical except of the version of the content they hold.
The mobile app itself is built with 2 different machines. Mac for iOS and Linux for Android. Up until recently everything was working as supposed to until a few weeks ago I noticed that Android app does not connect to the remote server anymore. First Meteor status says that it is connecting after which it just switches to waiting.
I realize that the problem can be in many places that is why have tested everything separately until found out that Android app built on Linux and pointing to the development web server particulary does not connect. If I change something in this scenario for example build Android app on Mac or build Android app pointing to release server everything works. I understand that we can just build Android app on Mac as well but it makes me very uneasy that something just stops working out of blue.
So far I know the following:
building server works as supposed to
development web server is working as well(it is accessible through
the web and iOS apps as well as Android app build on Mac machine)
it is not a recent bug(reverting to previous versions does not work)
For the reference:
I have all of the following set up in the project to the correct EC2
instance:
process.env.ROOT_URL
process.env.MOBILE_ROOT_URL
process.env.MOBILE_DDP_URL
process.env.DDP_DEFAULT_CONNECTION_URL
process.env.ROOT_URL_PATH_PREFIX
Neither meteor run nor meteor build seem to produce a working build
on the device.
The following cmd are used:
meteor build ~/[build folder name] --server=[link to EC2 instance
meteor run android-device --mobile-server [link to EC2 instance]
Versions:
Meteor 1.4.2.3
Linux Ubuntu 16.04 LTS 64-bit(all are the same)
Phone Samsung Galaxy s6 edge Android 7.0
Would appreciate any input if anyone has any idea what that behaviour could be caused by.

Ionic template cache doesn't work on device, only in browser

I implemented gulp-angular-templatecache-ionic to my Ionic app, which made my application run significantly faster in my desktop chrome browser, but when I build and deploy (ionic run android) this application to my device (LG Nexus 5x) it is still slow, it looks like nothing has changed, as if the built android version does not use the angular template cache.
I followed this article: http://tombuyse.com/improving-the-performance-of-your-ionic-application/
Any ideas or suggestions how to debug?
Thanks!
In order to debug your WebView app please follow this guide from google
https://developer.chrome.com/devtools/docs/remote-debugging
If your android version is less than 4.4, then you cannot debug through the chrome devtools.
you can instead run an emulator via the adb emulator, you'll need the android sdk and the adb tool.
read more here: https://developer.android.com/studio/run/emulator.html
The default android emulator/simulator is slow, and also need the HAXM accelerator, you can download the Genymotion simulator which is a replacement for the default android emulators, and run faster, also doesn't need to change anything in your hardware configuration
https://www.genymotion.com/

Issue with Phonegap / Cordova and Android dev

I started learning Phonegap and cross-platform mobile dev. I have an issue testing my Android app while only using command line.
Windows 7, Nexus 5 linked to the computer and found in the adb devices.
So, building a new Phonegap project, adding Android to it with no problem.
phonegap build android
works fine. Then :
c:\Android\Project\hello>phonegap install android
[phonegap] detecting Android SDK environment...
[phonegap] using the local environment
[phonegap] trying to install app onto device
[phonegap] no device was found
Device is properly linked with usb debugging checked. What's "amusing" (but not really for me right now) is that if I launch Eclipse, adds the project and run it as an Android project, it uploads and launch on my device instantly. The point is, I don't want to launch Eclipse just for that...
Please help me resolve this.
BTW I also tested the emulator on Eclipse, it's awfully slow ! Isn't there a better way to test this, or the only option is to have my phone linked all the time ?

Phonegrap stalling on "trying to install app onto emulator"

I installed phonegap CLI on my Mac OSX 10.7.5 and used it to create the default "Hello World" app. I then issue the command phonegrap run android -emulator. This runs through the steps and then stalls at the point of "trying to install app onto emulator." The Emulator loads and is running as normal and I can navigate the emulator perfectly fine but the terminal just stalls and never actually installs the phonegap application. Anyone ran into this issue?
Yes, I ran into the same issue but on Ubuntu android emulator. The emulator started fine but the application actually not installed. I don't know why it happened. I googled around and someone said it might caused by the project name, you couldn't use space and dash in the project name. But it just doesn't work for me.

Categories

Resources