Android :: Backround Work / Use Service For Communication?
Dec 21, 2009
This is the scenario:
1 user has a main activity used for ii.
2 program needs to communicate with peers and keep connection and wait for messages
3 when a message comes it is shown in the main activity. so the question is should I use a service for the communication and what type of service? and also should I use Aspects in the service in order to keep my ii responsive and why?
View 1 Replies
May 26, 2009
I'm implementing a service that contains a thread to handle all time consuming operation. My core service logic is in a different thread than the ui or main thread. According to the Android document, when the OS plans to free some system resource, it will call onDestroy () on the service and only when onDestroy() returns it will kill the process hosting the service, thus giving opportunity to the service to cleanup.Now, when onDestroy() is called, I want to send a message to my service thread to do the necessary cleanup. Only when the service thread acknowledges that the cleanup or shutdown is complete, onDestroy () should return. I could find a way to send asynchronous messages to threads and the corresponding processing of the messages, but not able to figure out how I need to implement onDestroy(), such that it would send a message to the service thread and should wait for a result, before returning.
View 13 Replies
View Related
Jul 6, 2009
I'm writing an application that consists of a background Service and one or several Activities acting as UI towards this. There will most likely be several different UIs for this service that will installed later on, like custom widgets or UIs. The question is how to solve this in the most efficient way. Is it better to only use Intents for communication between UI and Service (sending control commands with Intents from the UI and listening for Intents from the Service for state and data updates) or should I prefer using IPC communication (AIDL -> Java Stub, binding to the service etc.)?
Since the UI might be started long after the service is started, I would either need to use sticky intents to signal current state, or have a very frequent intent sent by the service if choose to go with the Intent-based design. Which one would be the preferred way in that case? I've read that sticky intents are much more resource consuming than normal intents, but are intents more consuming than IPC directly towards the service? Also, is really an AIDL the right way to allow third-party integration? Intents sounds better, since they are also asynchronous.
View 12 Replies
View Related
May 3, 2010
Is there a significant difference in time needed for sending data over a service or by using an intent?
Are there general advices when to use service and when to use intents?
View 4 Replies
View Related
Nov 12, 2010
I am a junior software developer working mostly in c#. I am being tested at work by my boss for a new role as an android sdk developer. I passed the first interview and now he wants me to write a small application which boasts certain simple features such as communication via GPRS service and handling data (i guess he means use a sqlite table to store some input). Anyone got any simple ideas you can throw at me to give me a good starting point.
View 3 Replies
View Related
Dec 13, 2009
I'm having an issue with inter-process communication with a Service and Notifications
The structure of my application is as follow: - ListActivity (TunnelDroid), once the user presses a listitem it will start a Service. The ListActivity is binded to the service for intra-process communication
- Service (TunnelManagerService): running in the background. This service will add a (permanent) Notification in the statusbar. Using a Handler I sometimes need to communicate with the ListActivity (to show GUI Dialogs)
- Notification: Once this notification is clicked it should open the ListActivity.
To add the action when the user touches the notification I use the following code: notificationIntent.setClassName("net.sourceforge.tunneldroid","net.sourceforge.tunneldroid.TunnelDroid"); Then I use the intent to create the notification.
Unfortunately a new Intent is opened. When I press the back button the original ListActivity is shown. So I have two instances of my same class/list.
How could I make sure the original ListActivity is opened when the user touches the Notification?
It's OK for me if the original ListActivity was previously destroyed, but I cannot have two instances. The problem is that the Handler in the Service has a reference to the ListActivity (PARENT_ACTIVITY), so if another instance is created I have invalid references. I could overwrite the PARENT_ACTIVITY, but then when the user presses the back button I have an instance with no correct link to my Service resulting in a crash/nullpointer.
The complete source can be found here: http://tunneldroid.svn.sourceforge.net/viewvc/tunneldroid/tunneldroid. Attached you can find a drawing of (most of the) inter-process communication. Could someone point me in the right direction?
View 3 Replies
View Related
Mar 19, 2010
I'm working on establishing a two-way communication between an Activity and a Service which runs in a different process.
Querying the process from the Activity is no big deal. But I want the process to notify the Activity on events. The idea behind it is this: the service runs independently from the actual app. It queries a webserver periodically. If a new task is found on the webserver the process should notify the activity.
I found this thread over at AndDev.org but it doesn't seem to work for me. I've been messing around with BroadcastReceiver. I've implemented an interface which should notify the Activity but the problem is that the listener is always null since the Broadcast from the process is done via Intent, hence the class that extends BroadcastReceiver will be newly instantiated.
How can I establish a 2-way communication? This has to be possible.
View 3 Replies
View Related
Oct 22, 2009
I have a ListView backed by customized ArrayAdapter where each item has 2 LinearLayouts - one I call head, and the other one - body. The body is hidden (gone) until user clicks on the row at which time it slides out. The second click (on the head) will hide the body. However if user clicks on the body it brings another activity. All of this works just fine, here comes the problem.When user presses on body I want a visual indication of the action just the same way as regular list item will flicker an orange background when pressed. I'm not getting this by default since (my theory) the onPress event is intercepted by body's view and not processed by the list item.The first thing I tried was to execute body.setBackground('#ff00ff') (never mind the color) in onPress event. That didn't work since (I suspect) there's no repainting after the call. Then I dig a little bit more and decided to use <selector/>-based background. I defined body_background.xml in drawable folder and assigned that to the body's background property.
There I noticed that background will only change if the even is processed by the list. For example if I set <item android:state_selected="true" android:drawable="@drawable/selected"/> then when I press on the head - the background of both elements (head and body) will change, however when I press on body - nothing. So to summarize my question.how do I change background of the child element in the list item if I assign custom onClick handler to it?
View 6 Replies
View Related
Jul 13, 2010
So my battery for some reason is sucky again so I turned off background data letting.anything sync.at anytime .. what will b affected by me turning that off?
View 4 Replies
View Related
Jan 14, 2010
Is there a way to post a picture I downloaded as a backround without having to crop it to droids standard ratio? If I didn't have to do that the pictureslooks like it'd be the perfect kind to move over with each og the 3 scrreens
View 5 Replies
View Related
Sep 5, 2010
My app which was working on 2.1 and earlier version fails to run properly in 2.2. It relies on the location but I do not get any error message. However under DDMS /logCat, I see a message saying: Error message while getting the location address: Reason: this service is not available. This is coming more as an information message rather than an exception or error. The process that is printing it out is System.out. Note that I did everything possible ( I can think of) to upgrade the app to run in android 2.2. The API version was changed to 8.
The manifest file contains all the following:-
<uses-library android:name=*"com.google.android.maps"*/>
</application> <uses-sdk android:minSdkVersion=*"8"* />
<uses-permission android:name=*"android.permission.INTERNET"*/>
<uses-permission android:name=*"android.permission.ACCESS_FINE_LOCATION"* />
<uses-permission android:name=*"android.permission.ACCESS_COARSE_LOCATION"* />
View 5 Replies
View Related
Jun 30, 2010
I have an Android Service that is started by my application and does some things in a threadPool using Executors.newCachedThreadPool()
Once it has finished doing it's work I would like the service to stopSelf(), how can I get the service to determine when it is no longer needed (ie, there are no more Threads executing) so that it can shut itself down automatically?
View 1 Replies
View Related
Jul 28, 2010
I have a local Service running together with my application. I also have a class derrived from Application class.
When the local service is created it gets and uses the Application instance using getApplication.
Can the app itself be terminated while my service is still running and what happens if so? Would getApplication return null?
View 1 Replies
View Related
Jun 19, 2010
I've never quite understood the connection. If you have a Google Voice phone number set to forward those calls to your cell phone, do you need to have the app running on your cell phone for this to work or can it be manually turned off?
I would imagine that the call forwarding would work regardless, but what about the app keeping track of those calls in a call list, or keeping track of the voicemails, etc.? Can you just open the app manually and all of this information will be there, or does it need to be running at all times in order to record the phone calls/voicemail as they come in?
View 7 Replies
View Related
Dec 21, 2009
I was interested in developing a clock widget for the homescreen and upon reading Home Screen Widgets tutorial, I wondered if there is a pre-existing Service I could reference for updating the current time rather than re-inventing the wheel?I download the Retro Clock application on my android phone and noticed that when I click it, it pops up the Alarm Clock settings, but with the default Google Analog Clock widget, upon click does nothing.Is that because the Retro Clock widget implements the Alarm Clock service? If so, how can I go about referencing that service? Or do I have this all wrong and misunderstood?
View 4 Replies
View Related
Jul 9, 2010
I have an application that creates a notification with sound when a specific text comes in. To do this, I detect the current ringerMode, change the ringerMode to normal, play the sound, and then quickly return the ringer back to its original setting.
View 1 Replies
View Related
Jul 28, 2010
I was demo'ing a DroidX the other day and was blown away by the google map and voice ability. This will lead me to buying one of the android devices. Among other features. Query: Can GPS enabled apps, work on the phone, without cell serivce. IE can you pre-load say all the US map and POI info into the phone so it can be used as a standalone GPS in the middle of no where.
View 3 Replies
View Related
Jun 14, 2010
I bought an evo last friday (june 4th) and received it Monday June 7th, and now a week later i would like to return it because of the light leakage problem im having at the bottom of my screen. my question is, i came from t-mobile, and ported my number and with that had to pay 100$ ETF, what would happen? as in, if i cancel my service, would i go back to tmobile with the same number and the ETF would be revoked? or what would happen exactly?
View 3 Replies
View Related
Aug 8, 2010
So when I bought this phone I was told GPS will work without service. I'm in Asia right now for 9 months and it doesn't. From my research, I think the problem is that agps does a call to verify that local service is available before it will kick the regular gps in. Forgive my crude tech speak, but I imagine there must be some sort of workaround. Is there any way to fake the phone into thinking it has a sprint service signal or is there a way to turn off agps? There must be some sort of hack I can do. I hope someone can give me something, this phone is an expensive brick here. And no, turning on airplane mode enabling wifi and gps location services don't help. I've tried every possible combination, I can't use the GPS without the phone verifying the sprint network."you need a network connection to get the api call to work. Once its running you don't need the network for it to keep running. A guy in the Droid forum told me that.
He says that if you turn your phone on in another country the api would not get some sort of response (license) from the network and the gps would not work"
View 6 Replies
View Related
May 8, 2010
My understanding is that you can use GV's voicemail service in lieu of the carrier's voicemail, even with a non-GV phone number. I have selected the option in GV to use GV as the main voicemail for both my VZW and GV phone numbers. However, when someone calls my VZW number, they receive a "your call cannot be completed" recording and the call ends. Does anyone know how I can correct this? Is visual voicemail behind the issue?
View 9 Replies
View Related
Aug 16, 2010
I've read several threads and still am not 100% clear. At home and at work, I have FULL 3G service (still no 4G in my area). If I turn on my WiFi at both places, will it use less battery? Particularly at work when get 50-100 emails during the day?
View 5 Replies
View Related
Nov 9, 2010
I have a Sony Ericsson Xperia X10 and tried to use the Update Service to get the latest firmware for my phone, but after the new phone software was downloaded and started to install onto my phone it only got to a few millimeters of completing before it threw out an error saying that that it couldn't install the new software! Now my phone doesn't want to work anymore! Every time I start up the phone it just shows the x10 picture with an exclamation mark in a yellow triangle! What should I do? I need my phone working to complete daily tasks!
View 8 Replies
View Related
Dec 9, 2009
I am on the cusp of leaving my BB Curve and buying either an HTC Hero or the Samsung Moment. Both have their pluses and negatives.However, something I hear in both forums is to save battery turn off GPS. If you do that how does "Emergency Location" and/or "E911" service work? Aren't those dependent on GPS?
View 3 Replies
View Related
May 1, 2010
I have successfully gotten JmDNS working on Android 2.1 testing on a Motorola Droid by using MulticastLock, but recently got an HTC Incredible as second test device, and JmDNS discovery doesn't work at all.I should mention that broadcasting a service still works and everything appears to run normally, but serviceAdded never gets called. Does anyone have thoughts on why this might be?
View 1 Replies
View Related
Dec 17, 2012
I am new to android programming and I am trying to set a connection with the android as a host. I have included the following imports:
import android.content.Context;
import android.hardware.usb.UsbDevice;
import android.hardware.usb.UsbManager;
import android.hardware.usb.UsbInterface;
import android.hardware.usb.UsbEndpoint;
import android.hardware.usb.UsbDeviceConnection;
import android.content.Context;
My problem is when I use this code :m_usbManager = (UsbManager) getSystemService(Context.USB_SERVICE);The eclipse editor shows a message saying that getSystemService(String) is undefined for the type CPrinterCommands(The class that I am using). Quick fix gives as a solution to create a method called getSystemService, however I can't find why I would need to create a method, all the examples I found, none of them had a method getSystemService.
View 1 Replies
View Related
Dec 10, 2009
I wrote a TCP socket client, an android application. On my emulator, it can successfully connect to a TCP sever running in my PC. But, when I deployed the the apk into my real phone, HTC g4, it dosen't work. An exception was raised said "java.net.SocketException: Network unreachable". The situation is, my handset was connected to my PC via USB, and no other connections were available. How can my android application connect to a PC server in the case. I don't know if we can use socket over usb connection. If yes, then why my application doesn't work. If no, then how?
View 2 Replies
View Related
Mar 30, 2010
I have a design problem with my Android components.
My activity is starting a service which is doing the work in the background. What I want is that the service informs the activity about state changes. How can I do this?
Normally I would add an observer but the activity has no reference to the service. Then I was thinking to take AIDL but this is more for inter-process communication.
How is it possible that the service informs the activity about state changes? Both are running in the same process. What can you recommend?
View 9 Replies
View Related
Oct 18, 2010
I am a beginner in Android and i want to establish a serial port communication(UART RS232) library in Android Framework Layer. My applications want to use that libary to send messages to some serial port devices. here we wan to use android as a embedded device and not a mobile device. can you suggest me how to establish a seria communication and to add that library on android framework layer.
View 3 Replies
View Related
Sep 6, 2010
I have to develop a multiplayer game. The game will be supported between different platforms: 1) Two android clients. 2) Android client and a web application (something like facebook and android client for Texas- Holdem game).
I want to handle the communication between the platforms through a service.
I have asp.net (C#) background so I thought to implement the communication using WCF service but I am not sure this is the best choice?! Can you please tell me if my choice is good or should I choose other approach to implement the communication?
View 2 Replies
View Related
Jul 3, 2009
I want to send and receive information between Emulators in Android.i am using two systems and i have installed android in both the systems and i have to consider one emulator as server and another as client.Now i want to send data from one to another.Anyone knows regrading this please help me with some sample code.
View 2 Replies
View Related