I have the SpringMvc web app integrated with kurento one2many web app. I want to connect to this from android app. How to do it if kurento Android SDK is not supported from over year ?
I need to user URL connection or something else ? Sorry for the stupid questions, I'm newbie in this.
I think there is a misunderstanding with the Kurento Android SDK (a.k.a. KANDS) That project was used to control the media server, not to connect to any of the tutorials. In the beginning, KANDS was supposed to be used to create pipelines in the media server, but it was a bit useless, as the moment you want to create a real-world app, you are going to set up a server somewhere and do all the signaling from there.
Long story short: you are the one that decides what type of signaling has to be done, nad KANDS not any other project (for now, but this will change soon) could help you with that
If you want to connect to one of the tutorials, you'll have to implement the signaling protocol of the tutorial, not that of the media server. Thus, if the tutorial expects a startRecording message, you'll have to send that JSON message to the server-side app, from your native Android App. Each tutorial has a different protocol, which you will need to implement in order to.
The tutorials are there just to show the capabilities. They are not full fledged apps, and shouldn't be used into production. The rationale is to show how Kurento works, and not how to create a SpringMVC app.
Related
I've got an audio playback application. I need to add a streaming feature which works in coordination with a website. Meaning, when a new file is added to the server and playable via the website, it should automatically become playable on the app. I do not want to hard code it into the app and am looking at making it dynamic. The only solution I can think of is linking the entries to a SQL database, however, the web developer has expressed security concern. He thinks allowing applications to connect to the db could pose a risk.
Any ideas on implementing this?
I have been to similar situation many times. A web Socket is the ideal solution for such cases.
And the mobile should never connect to the db directly. the connection should be done , validated and monitored through a web service providing the Mobile with a RESTful Api.
I am trying to create an android application in which an user will pretty save some data in database-like user data, photos and also be able to retrieve.
But I am clueless how to set up a server, connect to some database etc.
Can somebody help me point to right resources for end-to-end installation of server, database, and its interaction with the android application
Just set up a basic server that works over HTTP, and use HTTP libraries for android to make requests and handle results in the device. There are plenty of technologies with which you could make the server, just google building REST API with PHP/.net/java (whichever language you are comfortable with).
If you are mobile app developer and want to create server-client app then better use any back-end service rather than implementing new by own. Some most advanced and simple to use services are Parse and Firebase , BaasBox also there are many more.
And the plus point is this services free of cost until you have very large users.
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
I am new to Android and taking the risk of doing a final year project of building an Android app. I would like to know whether I can create Client-server architecture application in Android. I'd like the front end to be the mobile app. Also, where do you store data (I don't know where to store data exactly) at back end.
Use Restful web Services with json(Ex: WCF in the backend with Sql Server)
For Mobile App, These are useful tutorials http://developer.android.com/training/index.html,
http://www.vogella.com/tutorials/android.html.
Very many, if not most, existing Android apps retrieve data over the Internet and display it (e.g. the StackExchange, Yelp, or Facebook apps). They are clients requesting data from servers and therefore fit into the definition of being “client/server”. I'm hard-pressed to think of an app on my phone that isn't a client to some kind of web service.
If, as your question suggests, you are using HTTP for client/server communication, there is no reason why the client platform (Android) should have any impact whatsoever on the server-side implementation. In the wild, Android clients are served by servers implemented with every conceivable combination of OS, language, and database. Therefore “where do you store data?” is an unanswerable question, as the answer depends entirely on implementation choices that you make on the server side.
I am an android developer and I made some board games. Now i want to make some of my board games multiplayer. I don't want to create and host my own web service, so i thought about P2P.
The first thing i found was the XMPP protocol, however it's not real P2P, but if i can use the existing google talk service, i'm ready to go. Is this possible while using your existing google account without interfering with the normal working of your google talk client?
Then i heard about JXTA, a real P2P solution, and it's already ported from J2ME to Android (http://code.google.com/p/peerdroid/).
Maybe i am overcomplexing things here (as i do sometimes)
I just want to know the easiest way to do simple P2P for a boardgame.
All your opinions are welcome! Thanks in advance
Kristof, Did you get an answer to your question? I've been working on a multi-player application recently as well, though I've chosen to host the server (originally). I'm now reconsidering my choice, though, but the library I'm using fully supports peer to peer communications. The underlying protocol is built on top of Google Protobuf. It's essentially a full duplex RPC stack built on top of Netty, which can use Protobuf. Here's the URL to the RPC protobuf stack: http://code.google.com/p/protobuf-rpc-pro/
The author has been very helpful and I've found a couple of bugs, nothing major. I also had very little issues getting these libraries working on my Android phone, but they're not terribly "compact." Nothing extraordinarily large, just not small :). So far, I've had no issues getting the communications working both synchronously and asynchronously. As such, I may be moving my game over to a "peer to peer" style, and just provide the necessary location/registration server that would be used to find existing games/server.
Using XMMP should be possible for you case. Look at smack from igniterealtime. They have a nice and active java api that helps to build you own jabber extension packets that can be used to transport the changes in game state.
I think that using two google talk clients at the same time with the same account could be difficult. But it would be great because you could invite all the friends from you list to play with you directly from your game. This way you could easily get more people to play your game.
You can't use the existing Google Talk Service/Connection from what we've seen. You should take Janusz's advice and check out the smack library, that's your best bet. To allow multiple non-interfering connections with the same GTalk login take a look at the resource component of the XMPP address, it's what allows you to be logged into two clients at the same time to the same account. You can effectively make your game another client. More here: http://code.google.com/appengine/docs/java/xmpp/overview.html#JIDs_and_Resources
Finally, there appears to be some new functionality in 2.2 relating to device push communication, but I haven't looked into it yet. 2.2 is not widely deployed yet either, so probably of limited use.
Basicly, if you want to write a multi user game or a game built on top of XMPP (Jabber), you should have a serious look at pubsub extension of XMPP. It's designed for pushing data from a server to clients, in the opposite way of HTTP. In HTTP the client has to pull information from the server all the time to be able to know when some new data is pushed. While XMPP is designed to push data to clients, when something happens. Less resources used on server and clients.
You should not use the Chat part of XMPP, as that will interfere with the users presence.
In pubsub you can create a tree of nodes, where clients can listen to any new data published in any node or subnod in the tree that the client subscribes to. So if some client publish data on one node, all clients that has subscribed to that node, or any parent, will be notified about this data.
The good part with XMPP is that it's extensible so you can extend the protocol with your own extensions. I also give you user authorization, authentification and encryption, and you don't need to debug that yourself.
You could use any XMPP-server with good support for pubsub or you can host one server yourself. There are plenty of servers usable for this. GTalk doesn't have support for PubSub last time I looked.