[Q] [Android Core] - Handling multiple data-based applications - Android Software Development

Hi All,
I want to know how Android handles multiple applications which are data-based simultaneously. For example, one of the Android Applications might be an IM, one e-mail application, one SNS client(like Facebook client, Twitter client), but all of them can run simultaneously in Android without any hiccups. May I know how this situation is handled in Android stack?
If yes, then since Android is open-source, any pointers to suitable portion of the platform code which handles this would be perfect.
Please excuse me if I was not clear enough on my question and let me know. I'll try to explain it yet once again in a better fashion.
Thanks,
Pritam.

I really don't understand your question. Are you asking about how the OS multitasks? How the TCP/IP stack handles multiple connections? Something else?

Yes, you are right. I believe the TCP/IP stack implementation is part of the Android Stack Code. I want to know with so many Applications using data services simultaneously, how does Android keep track of the sessions and everything? A suitable pointer/reference to Android Code would be simply great.
Thanks,
Pritam.

The android is based on linux and this is all part of the core kernel networking drivers. TCP/IP on linux has been around for ever. Somehow, I think we're talking past each other.

Related

G1 Rant & Rave

hello all and congrats on the new forum
the android in its current state is quite a poor business phone compared to winmo6.1 for a few reasons. can you all chip in in identifying the areas of weakness just to help out developers who want to do something about it
ill start by mentioning the obvious things to me
1. no exchange mail support with search server and html mail(maybe a roadsync port is needed)
2. no mention of vpn support
3. the join domain feature of wm6.1 was kinda useful to some
4. the only platform that can access our eap-tls network in wm5/6.
5. not sure its a big thing, but maybe a basic firewall is needed.
6. an option less integration with gmail (not good for corporations who have security concerns)
7. reader/editor for office 2k7 documents
8. remote desktop (windows, osX, linux)
9. maybe bundling all the buisness features as a single software pack (that does not need to be included with all sold phones if not many people are intrested) this will simplify development and updates.
10. out of box wirless 3g/edge modem or something similar to WiFiRouter.
that's what i can think of for now. feel free to repost this in a more visible android forum
well then don't get it
whats with the hostility. I'm just trying to make android a more attractive platform by highlighting its business shortcomings.
if we can get developers interested in developing these kind of apps early in its life to make it more corporate friendly it would be great.
taking care of business and core features are far more important than cool 'n' pointless apps that the iphone seems to be handling pretty well.
more stuff:
8. remote desktop (windows, osX, linux)
9. maybe bundling all the business features as a single software pack (that does not need to be included with all sold phones if not many people are interested) this will simplify development and updates.
10. out of box wireless 3g/edge modem or something similar to WiFiRouter.
since it's linux I have no doubt that most of your worries will be addressed. I know Linux has a remote desktop app but the question is will the android run non-java apps? Will it have GCC and some libs? Can we download GCC and some libs to our microSDHC cards? Will SSH work? Will the android GUI have X11-like network support? I am not much of a programmer but if the android has gcc and libs I will be doing some compiling of linux apps.
dagentooboy said:
since it's linux I have no doubt that most of your worries will be addressed. I know Linux has a remote desktop app but the question is will the android run non-java apps? Will it have GCC and some libs? Can we download GCC and some libs to our microSDHC cards? Will SSH work? Will the android GUI have X11-like network support? I am not much of a programmer but if the android has gcc and libs I will be doing some compiling of linux apps.
Click to expand...
Click to collapse
Im about 95% certain that all apps run inside android's java environment. Therefore any existing opensource application would have to be ported over to the specifications of android's java language.
Android as an operating system is just a linux executable binary. Think of it like X server. Android is just a GUI, but as of now everything that runs in that GUI has to be specifically written for android.
It may be possible to run seperate tty sessions... and that could allow you to run some sort of server in the background behind android that you could access from inside of android via a web browser (http://127.0.0.1 aka localhost style)
mburris said:
Im about 95% certain that all apps run inside android's java environment. Therefore any existing opensource application would have to be ported over to the specifications of android's java language.
Android as an operating system is just a linux executable binary. Think of it like X server. Android is just a GUI, but as of now everything that runs in that GUI has to be specifically written for android.
It may be possible to run seperate tty sessions... and that could allow you to run some sort of server in the background behind android that you could access from inside of android via a web browser (http://127.0.0.1 aka localhost style)
Click to expand...
Click to collapse
yeah... that's what I thought. I was hoping that wasn't the case.... I can dream right? Maybe it will be like the Zaurus all over again and we can write an X11 environment for it.
Nr. 1, the Exchange feature was mentioned at the launch, and the official answer was "we expect developers to provide applications for that". I think that also applies to the VPN part; since it's that open and that linux-ish, there will probably be lots of VPN/VNC/RDP/SSH clients available.
3 and 4, I don't even know what they are. Stuck in a Windows-based environment, with closed specs ? tough luck. That's vendor lock-in, you know.
5 - a firewall ? what for ? Your device won't be permanently connected, and you probably won't have lots of apps listening on your phone. Anyway, a filtering module will probably appear pretty soon. I'd be more worried about installed apps making hidden outgoing connections (apps calling home, or malicious apps), therefore a good app to have would be something similar to LittleSnitch.
6 - Google has service offerings for businesses, so you either choose to use their services, or you don't. If you don't like it, you shouldn't use this phone I guess
7 - the feature will appear for sure, at least the viewer part. Not hoping of a OpenOffice port for Android, though.
This phone actually doesn't look like it was built for business use, though; just take a look at the apps who won the contest, all of them are focused on fun, socializing, location-awareness and stuff that's useful to people, not business users.
Hmm, to follow up on the Office part:
http://www.informationweek.com/news/personal_tech/smartphones/showArticle.jhtml?articleID=210604042
"We expect it to be more for the consumer, not necessarily for enterprises," says Cole Brodman, chief technology and innovation officer at T-Mobile USA.
The 4.6-by-2.1-by-0.6-inch handset, which will go on sale in the United States on Oct. 22, will let users view Word and Excel documents as well as PDFs.
a few points:
a*you didnt coment on 8-10
b*the exchange feature needs licencing from mirosoft. i doubt the development comunity can do that. unless some genius cracks the airsync protocol
c*if you are on gprs/edge/3g then the phone is Always connected to the network. that why we have things like pushmail.
d*eap-tls is the most secure type of wirless access. and it uses certificates on both the server and client. the client normally needs to be part of the domain to be able to accept the certificate
e*almost all corporations are locked down to windows. its very imortant that buisness phones integrates very well with them if it were to be considered a buisness phones
f*dont you agree that having a buisness friendly is important for the sucess of any phone platform?
g* do you think that the lack of stylus or (resistive lcd) will hinder its ability to do remote desktop? the track ball thingy enough?
Most of the above points (1, 2, 3, 4, 7, 9) will most likely be addressed by developers and sysadmins in good time. In the case of Exchange, even if the platform is opensource, it doesn't mean that a 3rd party company can't license the technology to provide a solution. It might not be pretty (at first), but I wouldn't say it's impossible.
5. It depends on what specific vulnerabilities you're concerned about, whether on the app/run level or somewhere in the core Android stack. In general I doubt there's any issue that doesn't already exist on other mobile OSes, and given their respective solutions, the same is possible here. But if you have a specific concern in mind it would help to point it out.
6, 9. Google is certainly pushing its suite of apps and for good reason (because a lot of consumers use them), but given the open nature of the platform nothing is cemented in place. So while the G1 comes setup for use with gmail/gcal/maps/etc, there's nothing that says a sysadmin can't strip and replace. Moreover, the G1 isn't being pushed as an enterprise device in the first place; there's every possibility that carriers could release other handset models later, preloaded with more business-centric software packages (and less Google apps), and are simply holding off during Android's initial launch. If you think about it, Android has a much better chance of having a strong launch on the consumer front than on the enterprise front. Take care of the former first, then the latter has a better chance of long-term success.
8, g. Same as above, but Google is also pushing the cloud which could lessen the need for VNC/RDP/etc. Sysadmins will have their doubts about security in Google's cloud, but there's nothing that says they can't first observe the model and then later implement their own solution.
10. Not as much of an issue with the software as it is with the carrier. T-mobile isn't just launching Android, it's also launching its 3G network. Providing tethering out-of-the-box could seriously cripple the network in its infancy, and that's the last thing the US 3G market needs. Face it, we need good competition to force carriers to pick up the pace, and in time we could see some competing tethering plans between AT&T, T-mobile, et al.
Some thoughts in general:
Businesses may currently be invested in Windows Mobile for their mobile solutions, but the point isn't to take Android and simply turn it into WinMo -- that would be a wasted opportunity. WinMo users are effectively tied to their PC in one way or another (sync, RDP, svn, tether, etc). Android has the chance to push the cloud (among other innovative models), so that users are no longer dependent on existing workflows. The handset would become just a terminal for accessing the cloud, and transition between terminals would be completely transparent (Android on a phone? How about a netbook?). Not that I expect Android to overtake WinMo (or BES et al), but it gives companies more solutions that better fit their individual needs, and helps MS, RIM, etc start evolving the existing systems that are frankly getting dated.
thanks that was quite insightful
i would like to point out that a big portion (probably the biggest) of the android users only bought the G1 phone because of its great value. think about it the unlocked $399 G1 has more features than the $700 touch diamond. most of these people couldn't care less about what google have in mind for the platform. all they want is for their phone to do certain tasks (like exchange email) a lot of the other google-pushed tasks will probably be unused
I think for you personally, the #1 most important feature the G1 >>needs<< to have is spellcheck
fatso485 said:
...hostiliy...hilighting...buisness...intrested..
Click to expand...
Click to collapse
t mobile is a poor businesses Carrier
most of the big business i have seen use at&t
once tmobile 3g network become more mature they might get some more of the business market. but until they iron out the wrinkles in there new 3g network don't expect anything from tmobile. i don't think you want something like the iphone bill happening to all you business customers.
this is the first step tmobile has taken towards 3g in the US
i am sure there will be some stumbles.
I'm not 100% sure, but I think the Active Sync protocol needed for Exchange support is free to use from Microsoft. I see a LOT of it in many 3rd party email servers and applications. Many of which are in direct competition with Microsoft. So I think we can assume that Active Sync is very doable on the Android platform. Only needs a developer to do something about it.
Active Sync is my main concern too. Once that's in place, then some way to tether I'm getting me an Android phone quickly.
All the other concerns are too easy to fix either already or very soon, so the 2 problems I mentioned are the only show stoppers for me.
There currently isn't even a foolproof activesync drop-in replacement for Linux desktop distros. There's multisync and synCE, but they're both hard to install, hard to configure, and far from perfect in their implementation. As for getting it working under Android, like everything else, it's probably a wait-and-see situation. Most software for Linux isn't written in Java (which Android prefers/requires?) It'll be interesting to see if a java implementation of activesync software could happen.
does any1 know if the g1 has an on screen keyboard
haitiankid4lyf said:
does any1 know if the g1 has an on screen keyboard
Click to expand...
Click to collapse
Currenly, no. The demo and preview vids show that you need to open the hardware keyboard in order to type (except for the phone dialer). But I'm sure SIPs will show up pretty quickly.
fhsieh said:
Currenly, no. The demo and preview vids show that you need to open the hardware keyboard in order to type (except for the phone dialer). But I'm sure SIPs will show up pretty quickly.
Click to expand...
Click to collapse
Yeah, I hope they change that. When I had the Fuze I never liked pulling out the keyboard unless I have to type something long, an email or a long text or whatever. For normal web browsing, entering 1 URL, it's not worth it to slide it open, type and close it again.
my biggest concern is an appointment calender. im so reliant on my appointment calander ion my Kaiser... i wouldnt know what to do without it. Also, a way to sync files would be great. maybe the phone will be integrated with Google Docs? That would be SUPERB! I take notes in my college classes using Office Mobile, but if Android syncs with Google Docs... good lawd.. goodbye to WinMo!
bigdookie said:
my biggest concern is an appointment calender. im so reliant on my appointment calander ion my Kaiser... i wouldnt know what to do without it. Also, a way to sync files would be great. maybe the phone will be integrated with Google Docs? That would be SUPERB! I take notes in my college classes using Office Mobile, but if Android syncs with Google Docs... good lawd.. goodbye to WinMo!
Click to expand...
Click to collapse
Here's a video showing how well it syncs everything.
Say goodbye, WinMo

Secure SMS - What platform is best suited?

Hi all!
I want to develop a Secure SMS application for mobile phones. The idea would be to first add some security primitives to the OS and then to use these to write secure applications (such as SSMS).
Now, the thing is that this is experimental, meaning my goal is not (yet) to distribute an application reaching the most people, i.e. I would like to first limit the project to one platform and see how well it works there.
My question to you is: Which platform would be best suited for that (or alternatively: which platform should I avoid...), i.e. which platform has the best SDK for this kind of thing and how easy is it to do?
Thanks for your answers.
--
Baron_FEL
Well, to really be honest with you, my experience tells me that secure SMS ans secure-whatever will be best suited to those blackberry people. The reason they do buy a blackberry is for it's security, or so it seems.
Us Windows Mobile users could of course take advantage of an app like this, and it's way easier to program for a WM device, since there's emulators and SDKs everywhere.
Easiest platform actually would probably be java then its portable

Connect Android to Enterprise Java Bean

Hi!
Im sorry if this is a dumb question but I googled some stuff about it and never found a straight YES/NO answer.
Im a student in my final year and as a semestral project I have an electronic voting system built on Java Enterprise technology with enterprise java beans (EJBs) running on Glassfish.
For my final work id like to create an app for android that could communicate with those beans on a Glassfish server and thus a people could vote by a cell phone.
My question is Is this even possible? Over the past three days ive been googling stuff concerning this matter but nothing really helped. Id really appreciate a straightforward answer because my time for choosing a final project is almost up and I dont want to end up doing something that is impossible.
Don't take it bad, but it looks like you are a student who doesn't even know what he's working with. Not that it surprises me, but I'm willing to help you.
Answer these straight questions.
1. What is an EJB?
2. Who "runs" an EJB?
3. Where does an EJB "live"?
If and when you answer these three questions you'll know what is needed for a project where "people could vote with a cellphone".
What I can tell you in the most straightforward way is that it is possible for you to have people using their android phones to vote with your Glassfish server.
Android <-> Glassfish
I am looking for the same thing - to write Android apps that communicate with session beans on an app server (i.e. Glassfish). Since I will own both ends of the app, I am looking for a simple approach (e.g. RMI) as opposed to a lot of unnecessary bru-ha-ha (e.g. why turn Java objects into SOAP, just so we can turn them back into the same Java object ... not that Android really supports SOAP).
It looks like Google, for some reason, crippled the Android's ability to communicate. About the only built-in mechanisms I've found are REST (and I don't like REST) or writing my own protocol and using servlets.
Surely, by now, someone has come up with a simple, concise, mechanism for addressing this issue ... I just can't find it.

Android bluetooth game development

Hello,
I started developing games for android a month ago, now Im wondering am I able to create a game such as super smash bros. for android that uses Bluetooth to communicate and play? The game will be mainly for tablet but will be adapted toward Mobile Phones.
Regards,
Tripplemin
tripplemin said:
Hello,
I started developing games for android a month ago, now Im wondering am I able to create a game such as super smash bros. for android that uses Bluetooth to communicate and play? The game will be mainly for tablet but will be adapted toward Mobile Phones.
Regards,
Tripplemin
Click to expand...
Click to collapse
Yes you can - Android supports standard Bluetooth API for peer-to-peer communication, typically using sockets over bluetooth l2cap protocol. This means you could also communicate with non-Android devices but not iOS - it does not support these API's.
Implementation is not too difficult, particularly if you are familiar with doing sockets in Java.
On the other hand, you will probably encounter wonkiness. One issue is various implementation bugs, which are different on the different manufacturers because they implement their own Bluetooth drivers and stacks.
Also, the Bluetooth protocol supports a master-slave architecture. A master can coordinate communication with up to 7 slaves, but operates poorly/inefficiently if it is simultaneously operating as a slave to another master (or the master of 2 piconets at the same time).
In practical terms this means that it will work best if none of the devices playing the game are simultaneously using Bluetooth for e.g. tethering, controller, headset, google glasses....
Also, what happens if the master of the piconet (probably the person who initiated the first connection) stop laying and leaves... how quickly and with what prodding from your app will a new piconet form?
Looking at what I have written I realize I am probably putting you off the idea, and I'm not sure if that is fair - while I've done Bluetooth on Android and have done all the weird piconet stuff on raw Linux, I have not personally encountered the issues I'm describing on Android (just Linux). So I'm partially conjecturing and would be happy if someone else who had tried these permutations on Android wanted to correct me...
QUESTION?
Thank you so much for yur reply and I would like to contact you in the future so would you please give me your email address?
Regards,
tripplemin
tripplemin said:
Thank you so much for yur reply and I would like to contact you in the future so would you please give me your email address?
Regards,
tripplemin
Click to expand...
Click to collapse
Ask in the forum. This is what this is made for.
Everyone knows different things. You will get the best help here because there are many people seeing your question here.
THAN YOU!
Oh ok....and I love XDA, it brings developers to help each other..
Regards,
tripplemin

Software Watch?

Hi,
Is there such a thing as a Wear OS implementation SDK? Like the emulator, but without the presentation/display layer?
For example, if I wanted to create a web page that could be paired to the phone and used the Wear APIs to show data and/or notifications, is there any code I could base it on?
I was think of going looking into the emulator but figured there may be something more tailored for this.
Thanks for any help

Categories

Resources