I have android application which is using multiple libraries (built into app: e.g. android support v7, barcode zxing, google play, and couple other less known).
Trying to resolve some functional issues, I detected that app periodically is doing web https requests to strange ec2.x.amazonaws.com addreses which are not mine servers at all.
Addresses are:
ec2.174-129-33-55.compute-1.amazonaws.com,
ec2.107-21-232-174.compute-1.amazonaws.com,
ec2.50-17-229-89.compute-1.amazonaws.com,
ec2.54-225-166-66.compute-1.amazonaws.com
In a quite large java code I cannot find explicit calls to these addresses.
So, question is, how to detect which component in my app is doing these requests?
I'm using android app "Network Log" to trace traffic.
Thank you for help.
You might see if stetho picks it up.
Was trying to use Stetho but no luck huking into tracing web requests. Was able to get chrome view but no info.
But I found what is doing requests: it's a Crashlytics crash monitoring service - I discovered this by trying to query ip in browser and checked ssl certificate info...
Related
I'm not sure how one goes about using EasyPHP Webserver. Looking around the internet there doesn't seem to be a lot of materials on the matter. Whenever I try to run a php file from the www folder, a new blank tab appears without output from script code (Simple hello world echo). I'm not sure what the problem could be. My Http server and db server is running.
I'm also not sure if EasyPHP devserver is capable of going online. I'm currently in the middle of building an application that requires information to be sent to the server. My android application has been having trouble connecting to the EasyPHP devserver. Will I have more success with EasyPHP Webserver than I will with Devserver?
If you can make a success request using browser, then I think there will be no problem in Android.
Try to debug your webservice using tools like RestClient or PostManager.
Also, when connecting to webservice from Android application, I suggest using third party library like retrofit2. It's quite simple and we will never bothering with parsing json anymore.
In order to get the devserver running, you simply have to right click on the tray icon and select "Open Dashboard". There you can enable and set up all the services such as modules that you need. Please note that EasyPHP devserver is not designed to be used for a production server!
For performance and security reasons, I do strongly recommend to use Apache or nginx with the current stables of PHP 7.0.x and MySQL. If you need some help with that, feel free to ask me in a comment.
EasyPHP Webserver or Devserver are not a web server. It is a manager that installs Apache, PHP, MySQL, and other utilities, just like WAMP or XAMPP.
Just be sure to start the application that loads the Apache server before doing anything.
about your Android device connecting with the server, I'm not sure how that could be done, I have been more lucky using node, gulp and some scripts to generate a web server that is accessible to my devices in my local network.
I am trying to use Bluemix monitoring and analytics service bounded to a java application running on Liberty runtime. But the service always shows application as unavailable (even though I can see and verify its working). And none of the stats on CPU/memory utilization & response/throughput times work. The application is started by calling the Main class and its NOT web application. Is there specific entry in manifest.yml for M&A to start working with the application. I have used M&A with node.js application and it worked well.
I thought I will just get an answer by simple google search but alas not able to find anything on this. Appreciate the help
The Monitoring & Analytics service generally assumes a web application. The availability tab is based on doing an http GET of your application's route as defined in Bluemix. Since yours is not a web application it presumably either doesn't have a route or doesn't respond to the one that it has if it does have one; this will cause M&A to report it as down.
Likewise for Liberty apps the performance data is gathered via Websphere application server JMX MBeans. If your app is not a web app, it is likely that it is invisible to these interfaces.
There was a temporary outtage due to network issues, but things should be resolved now. Restage your app and try again...
We're currently running on App Engine (Java) and want to test the new managed VMs that Google are beta testing.
Everything builds, but I can't get any of the endpoints to work.
When I build, the error that comes back is:
SEVERE: Endpoints configuration not updated. The app returned an
error when the Google Cloud Endpoints server attempted to communicate
with it.
In the admin logs I can see that it has attempted, but the error comes back:
API configuration update failed
The discovery docs get created locally, but there isn't anything in the logs.
I can see the POST to the getApiConfigs, but no details on the failure.
Hopefully someone else has encountered the same problem and can help?
In essence my question is, what do I need to do to get cloud endpoints running on a managed VM for App Engine?
Thanks
Have you checked your logs at https://console.cloud.google.com/logs/viewer ?
I had the same problem and after checking the logs I realized that I had two classes with the same API name and version but one had namespace and the other didn't.
All API classes with the same API name and version must have the exact same API-wide configuration.
I just set the namespace to be the same for both API's and it worked.
I recently started developing my first web application with Spring and I'm stuck with a question I could not really find an answer to. What I have is a simple Spring MVC application running in tomcat which provides data in form of JSON, XML or binary via REST. This service is consumed by two clients I developed, a simple Java desktop application and an Android app. So far the clients only got information about new data by polling.
What I want now, is a way for the server to send notifications/messages to the clients when new data is available. For the Android client it would be good if the notifications could received anytime, not only when the app is currently open of course. I found lots of information for JavaScript client code but very little really useful, up-to date input about what the options for java and android clients are.
It would be really great if someone could give me some idea what would be the best way to achieve what I want (ideally something which integrates well with Spring on the server side), what protocols/libraries/frameworks to use, maybe even point me to some example or tutorial, how to implement this on server and client side.
Thanks in advance for any input.
For android or mobile devices, Google Cloud Messaging is the preferred way of sending messages to applications running on devices.
Example : spring gcm server side project and a sample tutorial.
For desktop apps, either poll regularly the server or run something in background like crontab or active-mq to check the messages and start the desktop app.
WebSockets are the best solution. check the implementation in java in the server side
Is BlazeDS 4 work with Google App Engine. I'm using BlazeDS 3.2.0 and getting an such an error
Detected duplicate HTTP-based FlexSessions, generally due to the remote host disabling session cookies. Session cookies must be enabled to manage the client connection correctly.
Is it possible to point out a place where I can download the compiled blzeds jar files that work with GAE since I'm facing troubles downloading the source code from the site(slow internet connection at a place I work).
If you need messaging do not use BlazeDS on Google App Engine. For remoting, several guys created some patches. One is here.