Android mobile apps retrieve data from cloud - android

I wish to have an overview on this scenario.
Please be layman term, I am slow learner.
Here is the scenario:
Android mobile apps connect to the cloud, then the cloud will return a website link for me. eg. http://www.example.com/123
Website link to be return can be control by admin on the cloud.
Mobile apps will only request the link from cloud.
The cloud there will only sending the link to the mobile apps when have request.
Problems:
What is cloud? what can be done on cloud?
How to connect the mobile apps to the cloud?
What need to be done on the cloud? host a server?
How the mobile apps connect to a website link? using uri will redirect me to the browser. i wish it can be just connected.
Thank you very much.. ^^

What is cloud?
In the simplest terms, cloud computing means storing and accessing data and programs over the Internet instead of your computer's hard drive. The cloud is just a metaphor for the Internet. In this case it refers to your server. Which you may need to purchase. (Server space + domain name[optional]).
What can be done on cloud?
Accept some requests from the client and return some data.
What need to be done on the cloud? Host a server?
The server has to be configured so that it can receive requests from the clients (mobile app). For this you need to install a Web server application like Apache, tomcat, ngnix, IIS, glassfish...etc (this depends on your server code). Also you need an application where you need to write the logic to handle the requests and return the response (In your case the website link). The application can be wriiten in PHP, Java, Python, javascript, .NET,..etc. The client communicates with this application.
How to connect the mobile apps to the cloud?
How the mobile apps connect to a website link? using uri will redirect me to the browser. I wish it can be just connected.
Basically (on Android) you make a simple URLConnection to the server from your code. Or you can use some libraries like Volley or Retrofit. Make sure your app has INTERNET permission. These are a million (more maybe) tutorials on the internet that can tell you how.

use free hosting or purchase hosting and try to learn about restFUL api..
try these tutorials
Android Volley Post Request Tutorial – User Registration App
Android Studio Volley Tutorial to Create a Login Application

Related

Remote API for authorization and registration from mobile client

I am looking for the best way, the most secure way to build Client-Server communication.
I have simple web site where I can login and sign up using well-known web secure implementation.
But I need to create standalone mobile client Android/iOS and make it possible to do the same (log in,sign up) from mobile client.
As far as mobile client will be native, not just mobile version of page. I need to create secure communication between client and server.
I have already implemented several projects using REST API with tokens over https, but it seems that there is better way to do this.
What is the most secure way to implement client server communication in this way.
Also in my case creating something like OAuth server doesn't make any sense because client communicating with server directly and I don't need to give some access to other apps like in OAuth.
Use web view but only for logging in and registering, of course on special mobile pages.
Just use https and REST API as I have done previously
Create some encrypted channel directly with TCP and sockets
I have no more IDEAS how to implement this, maybe someone can suggest how to do this or at least how this is done in apps like facebook, amazon, aliexpress .....
Thanks.

Local Multiplayer Server architecture on android

I would like to create a local multiplayer server.
My idea would be like this.
Server phone starts a server and any other device calls the server over wifi and see a html5 app. So the client devices doesn't need to download the app.
Are there any good frameworks which supports such a behavior?
I found already i-jetty (https://code.google.com/p/i-jetty/wiki/ConsoleWebApplication), but according to the wiki i need to download the app before. Another thing is I dont know how to access a database over calls to the webserver.
This is a big topic you are asking. A good starting point would be to investigate web services to get your database via a web server.
I'd recommend looking at Web Services..this is a very basic link:
http://www.w3schools.com/webservices/ws_use.asp

How to connect to the server on mobile application?

I am new to mobile applications. I am basically from a web development platform. I am just playing around mobile frameworks like App Framework, LungoJS, Jquery Mobile, kendo etc to gain some knowledge in this vertical.
The app I am developing is still in UI level. All I need is to fetch data from the server and populate in my app.
I need some ideas to establish server communication between the smart device and the server. My questions are
What kind of server needed for mobile applications ? A cloud or a
regular web server is enough ?
What are the ways to connect the app with the server ? ( on cross
platform mobile development )
What is the secure way to communication with the server ?
What kind of server needed for mobile applications ? A cloud or a regular web server is enough ?
Because you are creating a hybrid mobile application you can use any type of server side technology, it doesn't matter is it a classic web server technology (using Java, PHP or .NET) or some kind of cloud technology like Parse.com.
You also don't need to create anything from scratch. Best course of action would be to use some kind of micro RESTFul framework(like PHP Falcon or Java Play Framework). Read more about them here.
But, there's always a but. You can't use server side technology for classic content generation, you only need to use it to send data to your hybrid application. I will explain this later.
There's also an alternative to RESTFul services, you can create a webservice, again using Java, PHP or .NET.
What are the ways to connect the app with the server ? ( on cross platform mobile development )
You would use AJAX as a technology (in case of RESTFul), rest depends on you. You would probably do it in JSON format (or JSONP if you are doing cross-domain calls, but you don't need to think about JSONP when creating a hybrid application).
If you intend to use a web service then you would use a SOAP connection and communicate via XML format.
No matter which server side technology you use you will always use AJAX on a client side.
Now let me tell you why you should not generate your content on server side. Basically nothing can prevent you from doing that, you can generate your complete page on web server and just show it in PhoneGap app, it would still be a hybrid app. But, if you try to put this app in Apple store you will get yourself rejected.
What is the secure way to communication with the server ?
Security of course depends on server side technology. Every framework has its own kind of security handling, but all of them relay on HTTPS so you should not worry too much.
From the client side you can always encrypt JSON/XML data and send them using POST.
Examples:
If you want to use jQuery Mobile then take a look at this tutorial. It will show you basics of client - server side communication.
Since you are new to mobile application, ill try to give short answers
1) What kind of server needed for mobile applications ? A cloud or a regular web server is enough ?
A regular web server is good.
2) What are the ways to connect the app with the server ?
via web-services
3) What is the secure way to communication with the server ?
Use HTTPS webservices (SOAP, REST), HTTPS secures the transmission.
Above is a basic explanation for your quick help, I would recommend you to go through the documentation, and review some sample codes
This will really help you Sample
Please go through this link it will surely help you
http://www.androidhive.info/2012/01/android-login-and-registration-with-php-mysql-and-sqlite/
Webserver,cloud anything is good for restful service
for security purpose you can use POST parameter to send and recieve data or if you want more security then you can encrypt and decrypt data through secure algorithm

Secure connection between Google App Engine Endpoints and mobile client (Android, iPhone)

I'm trying to send secure user data between iPhone and Android clients to a Google cloud endpoints backend. However, when I look at the network log, I can see the data unencrypted, despite the url of our app engine project being https. Is there anyway to securely send this data over a network, or do we have to encrypt it on the iphone and android and then decrypt it in our app engine project manually?
Is this log part of the development stack, or an independent program like Wireshark? If it's the former, I believe the client libraries log the unencrypted data to ease debugging. Something like Wireshark should just show an HTTPS stream, and not plaintext.

Web service for android social networking app?

I am developing social networking app on android.Rough idea of my app is that when user launches an app it will get all users of this app in near by location.So for storage purpose of users data I want to use web server. I don't have an idea what is best way to start with.Should i use Amazon web services ? (S3,Ec2) I was surfing internet got these buzz words.
Please guide me what is best approach for database storage ? Should i write my own server api ? or What ?
These are some general things you will have to do:
Buy some server space where you can host your server (this is the amazon ec2, etc). If you need a fancy domain name, buy that too, and map it to IP address of the server that you brought (optional).
Setup a db of some kind on this server to store your data (msql)
Write wrapper web services (php, jsp, etc) which will expose apis to access your data remotely. For security reasons, you should also have some authentication using some token passing mechanism.
Access the data on your server remotely using the APIs you created in the web service.
I personally favor using a MySQL database with PHP to interface between the app and the backend! Your app can send requests to PHP and then your PHP webservice would write/read to the database and then return JSON to your app.
I would say this is a very subjective question though as there as so many ways that you can write a web service.

Categories

Resources