Android : Socket Creation Failure
I created a simple client socket from my Activity, but it fails. I am running this activity in emulator and server runs on PC(its a different application without Android stuff).
*clientSock = new Socket("127.0.0.1", 30001);*
logcat shows java.net.SocketException: permission denied <maybe missing INTERNET permission>
If I enable permission for my Activity(android.permission.INTERNET), my Activity constructor itself not called and logcat shows following info. Permission Denial: starting Intent < flg=0x10000000 cmp=com.example.client/.MyClientActivity > from null <pid=-1, uid=-1> requires android.permission.INTERNET.
Any suggestion on how to resolve this issue?
View Complete Thread with Replies
Related Forum Messages:
Android :: Detecting Socket Connection Failure
I am working on an app that uses a Socket to connect to a controller over TCP. The protocol library was written in Java and I am implementing it in android via a Service. where the Connection class is a Thread that handles the communications with the controller. It's where the Socket lives.I'm using the Preferences mechanism to store the IP and Port. If I feed the Socket the correct IP and Port, the Connection Service works beautifully. However, I am trying to simulate a user entering the wrong information and having the connection fail. The ultimate goal is to present a dialog and offer the ability to "reconnect" or "update settings". However, when I enter a wrong Port number, the application simply hangs.I was under the impression that Threads executed concurrently so I've tried moving the call to start the Connection Service to a Thread, but it still hangs the application.
Android :: Java Socket Not Throwing Exceptions On Dead Socket?
We have a simple client server architecture between our mobile device and our server both written in Java. An extremely simple ServerSocket and Socket implementation. However one problem is that when the client terminates abruptly (without closing the socket properly) the server does not know that it is disconnected. Furthermore, the server can continue to write to this socket without getting any exceptions. Why? According to documentation Java sockets should throw exceptions if you try to write to a socket that is not reachable on the other end!
Android :: Socket Programming - Java - Many Clients One Socket
Essentially Im trying to get many many java clients connect to a socket on my ColdFusion server (Using the Socket Gateway). However before i even start to code this, Im a little confused about sockets and their performance. First of all, are sockets meant for many(1000+) clients connecting to one socket (say port 2202) on one server? How is the performance if all there waiting for is basically a ping, or something such that when these clients receive this "ping" they can go get some new data.
Android :: Connecting Android Bluetooth Client Socket To Ubuntu Server Socket
I am writing an Android app that should exchange data to a server over Bluetooth, with the server side on a PC running Ubuntu, using the bluez library, in C (or C++).
My Android app fails (IOException) when I try to connect to my server socket on the PC.
Here is essentially what I in the java code (in Android, full eclipse project here: http://dl.dropbox.com/u/2968234/ThinBTClient.zip)
This throws IOException after a timeout of 10seconds or so.
On the server side (in Ubuntu 8.10), I basically set up a Bluetooth server socket, along the lines described in the example bluez/sdp-register.c
Down below is my C++ program. To compile it do
g++ -I/usr/include/glib-2.0/ -I/usr/lib/glib-2.0/include -o bt_server bt_server.cpp -lbluetooth
I can do the reverse succesfully, i.e. create a server socket in Android and connect from Linux, however this is not what I want to do!
I think either the problem has to do with my config of Ubuntu.
Android :: Socket Exception Socket Not Connected Android
In my android application i am trying to run a application using GPRS connection and not WIFI.When tried to run in wifi the app runs fine.The browser works fine with the APN settings set but when trying to connect to server using my application it gives me socket exception.I am using the below permissions in manifest file.
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses- permission>
<uses-permission android:name= "android.permission.CHANGE_NETWORK_STATE"></uses-permission>
<uses-permission android:name= "android.permission.WRITE_APN_SETTINGS" ></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" ></uses-permission>
I am receiving Socket not connected exception.Is there any other permission which i need to add for using GPRS connection other than WIFI.
10-27 18:26:19.689: WARN/CalSyncSvc(166): com.motorola.blur.service.email.protocol.activesync.ASException: Problem executing HTTP POST
10-27 18:26:19.689: WARN/CalSyncSvc(166): at com.motorola.blur.service.email.protocol.activesync.ActiveSyncMgr.sendRequest(Unknown Source)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at com.motorola.blur.service.email.protocol.activesync.ActiveSyncMgr.sendXMLCommandNoProvisoning(Unknown Source)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at com.motorola.blur.service.email.protocol.activesync.ActiveSyncMgr.sendXMLCommand0(Unknown Source)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at com.motorola.blur.service.email.protocol.activesync.ActiveSyncMgr.sendXMLCommand(Unknown Source)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at com.motorola.blur.service.email.protocol.activesync.ActiveSyncMgr.sendFolderSyncCommand(Unknown Source)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at com.motorola.blur.service.email.protocol.activesync.ProviderAPI.sendFolderSync(Unknown Source)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at com.motorola.blur.service.email.protocol.activesync.ProviderAPI.updateMapFromFolderSync(Unknown Source)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at com.motorola.blur.service.email.protocol.activesync.ProviderAPI.updateFromFolderSync(Unknown Source)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at com.motorola.blur.calendar.sync.activesync.SyncService.syncAccount(Unknown Source)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at com.motorola.blur.calendar.sync.activesync.SyncService$QueueEntry.run(Unknown Source)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:416)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:256)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at java.util.concurrent.FutureTask.run(FutureTask.java:122)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:648)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:673)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at java.lang.Thread.run(Thread.java:1058)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at com.motorola.blur.util.concurrent.BlurThreadFactory$BlurPooledThread.run(Unknown Source)
10-27 18:26:19.689: WARN/CalSyncSvc(166): Caused by: java.net.SocketTimeoutException: Socket is not connected
10-27 18:26:19.689: WARN/CalSyncSvc(166): at org.apache.harmony.luni.platform.OSNetworkSystem.connectStreamWithTimeoutSocketImpl(Native Method)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at org.apache.harmony.luni.platform.OSNetworkSystem.connectStreamWithTimeoutSocket(OSNetworkSystem.java:140)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:229)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:521)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at java.net.Socket.connect(Socket.java:1019)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:317)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:129)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:348)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
10-27 18:26:19.689: WARN/CalSyncSvc(166): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
10-27 18:26:19.689: WARN/CalSyncSvc(166): ... 17 more
Android :: Force Tab Activity Creation
I have an Android application with a main activity that is the tabhost. I'm adding multiple tabs to the tabhost with an intent to several activities.
My problem is that these activities are not created (onCreate is not called) until I click on the tab. This is a problem because I need to register broadcastreceivers: there may be broadcasts that are sent -before- a particular tab is opened.
I tried to work around this by:
Setting my receivers as static and registering from somewhere else. This is not possible because I need to call into methods.
Calling into tabHost.setCurrentTabByTag(the_tag) and then switching back to my root tab. This only works sometimes and this is a very ugly solution imo.
Not using activities but just using views instead. Also not a very elegant solution because it turns my tabHost activity into one huge master class doing all kinds of unrelated things.
Android :: On Activity - Re -usage En Creation
A question that might be a bit general/basic knowledge, but for me it has a quite direct background, so i'll form it as an example:
I have an activity "entry" showing something equivalent of a blogpost, that might have comments. You can click somewhere to open a "comments" activity. But in this activity there are links back to entries, creating a nice line of activities.
If I call the "entry" activity (with an intent) on a link to show this entry, am I re-using the old activity, or am I creating an endless string of entry, comment, entry, comment activities (pretty cost- ineffective that would be).
Android :: Creation Of Activities From Tabhost
I have a TabActivity. Within this activity (in the onCreate method) I create a TabHost and a TabSpec and do a tabSpectSearch.setContent(intenSearch); The Indent is created using intentSearch = new Intent().setClass(this, MyActivity.class);
As far as I already found out the class MyActivity is instantiated when I select the tab, to which it is connected. Is there a way from my TabActivity to force the creation of all activities (all tabs) at once?
Android :: File-creation Fails?
I use the following code to create a folder "mymir" and a file ".nomedia" (in the mymir-folder) on the sdcard of an android unit. However, somehow it fails with the exception that the folder the ".nomedia"-file is to be placed in dosn't exist.
Here's the code:
Android :: StartActivity -ForResult - At The Creation Of Main Activity
I would like to display a an access dialog activity at the start of my application.
In other words, I would like to start another activity (in dialog theme) as soon as my Main Activity is loaded. But, I know that I can not start an activity while another is creating.
I tried to start this activity in the onResume() method : I can see the new activity called, but the Main activity do not respond after closing the new activity.
Is there a solution to do this, without using delayed intent ? May i use a special flag for my intent ? I did not find, in the activity cycle, a way to detect the end of activity loading.
Android :: Video Creation Tools / Add Caption And Voiceover Later?
How do most of you wise developers create a YouTube video for your Android Apps, if at all.?
Hire some teenagers to do something creative and viral? Use a tool to capture the screen as a video and then add caption and voiceover later? Set up a home camcorder on a mini tripod, aimed at your Android handset on the table top? Don't bother with the video since it's too much trouble?
Android : Change Contents Of An Droid Dialog Box After Creation?
Is there a simple way to change the contents of a dialog box in Android without having to re-create the dialog box? I know that Activity.onCreateDialog() is only called once when the dialog first needs to be created, and this is where you initially set the dialog's contents. I need to change the dialog's contents later, so I'm wondering what is the proper way to do this.
Android :: Which Mobile Platform To Use Creation Of Musicians Support Application?
I'm a programmer looking to play in the mobile world. The application I'd like to play with would support my musical hobbies. I suspect a mobile phone with a music player could easily be programmed to support a classical musicians practice sessions. Access to media player APIs without the need to open external apps or do clunky things with files.Adequate access to playback API to create specific notes and beat patterns. As a hobby application, this should not require expensive tooling.I can switch to a new phone to use the application. Bonus points for something that easily ports to a netbook.I will admit I new to the world of sexy phones. I currently use an obsolete voice device with text messaging. I won't revealing my current flavor of programming because learning a new platform is just fine.
Android :: Unwanted Automated Creation Of New Instances Of Activity Class
I have an activity (called Sender) with the most basic UI, only a button that sends a message when clicked.This works ok, the message is sent but every time a message is sent a new instance of Sender is started on top of the other. If I call sendSMS method three times, three new instances are started. I'm quite new to android so I need some help with this, I only want the same Sender to be on all the time
Android :: Change Droid Widget Setup Preferences After Creation?
Say my app has a widget and I use a configuration screen to do initial app widget setup and set a few preferences.
I want the user to be able to change those settings by simply going into my app's settings screen and clicking an intent preference to open up the same options the user was given when the app was created.
Can I use the same activity as the configuration activity? Will I have to handle it differently? How does the existing widget get updated with the new settings?
How can I get this to work?
Android :: DVM Instance Creation - Launch Installed Droid App At Runtime From Another?
I trying to understand how a new process is being created based on AndroidManifest.xml, also looking for the possibility of creating/ forking a new Java process/new DVM instance at runtime.
I could find that using Runtime.exec one can issue system commands or launch native applications, but this is not what I am looking for, I am looking for creating an equivalent java process just as the parent java process.
Can I launch an installed android application at runtime from another android application? Whats the way for doing this?
Android :: Intent Filters - Prevent Creation Of Multiple Activity Instances?
I added an intent filter to one of my activities, so that when a user clicks a URL like "www.mysite.com", and if my app is installed, my registered activity can be launched. It works well.
I see that this creates a new instance of my registered activity though, every time a link is clicked. Is there any way to prevent multiple instances from being created - just recycle an existing instance if one already exists?
Android : CTS Failure In View
Was playing with CTS ,and came across a failure like below
testAnimation fail junit.framework.AssertionFailedError: unexpected timeout at android.view.animation.cts.DelayedCheck.run DelayedCheck.java:51)
Can anyone pass me some light on , how to fix this issue? or what should be the approach in cases like this? Any information will be appreciated.
Android :: Mock Up Developing / Creation Tool For Android
i search a tool to develop/create mock ups for android. The only things i find are psd files (http://www. matcheck.cz /androidguipsd/ and http://chrisbrummel.com/google-android-gui-psd - not all widgets) and this tool: http://www.balsamiq.com/products/mockups. But this tool isn't only for android and so the look of the elements isn't equal to the android widgets (button, menu/list item etc.). If someone knows a tool, please let me know.
Android :: MediaPlayer - Failure In Wav And 3gp Formate
I was very confused for MediaPlayer, follow the audio supporting formate from: http://developer.android.com/guide/appendix/media-formats.html
I success in mp3 formate, but failure in wav and 3gp formate.. i can't figure out why i can't? the other question is the error message from adb logcat,
E/MediaPlayer( 729): error (1, -1) E/MediaPlayer( 729): Error (1,-1)
What's the "(1,-1)" means? i try my best for several methods and audio/video support formate, but still failuere, and always get the error message..
Android :: TC Failure Due To Unknown Host
I am running the CTS on the Arm based phone. When I tried to run the Network related test cases.I am getting the above error in the "android.core.tests.luni.net" test package and due to this error around 179 test cases are getting failed.Please help me out.Is there any environment setting issue in the setting up the target.I have connected the target with the USB to my Fedora system. additionally target have the 3G Sim connected with It.
Android :: Apk Manual Install Failure [-12]
I have developed a small application on eclipse (SDK 1.5r1). When I run the project it worked fine. Then I exported the signed application. (Lunar.apk) Then I sent the Lunar.apk file to my friend to install on his machine. when he try to install it manually on the emulator the cmd prompt says
pkg: /data/local/tmp/Lunar.apk Failure [-12]
Please help me with this.
Android :: Getting Failure While Trying To Install Layar401.apk
I have downloaded the Layar401.apk file from web and trying to install it into my android device [HTC Magic, OS 2.2]. But every time I'm trying to install it its saying -
adb install Layar401.apk
1098 KB/s (1855698 bytes in 1.649s)
From other posts I figured out that there might be a missing shared library of google maps api in manifest.xml file. I tried to view the manifest.xml file and it gave me something like following -
package: name='com.layar' versionCode='27' versionName='4.0.1'
application: label='Layar' icon='res/drawable/icon.png'
launchable activity name='com.layar.Main'label='Layar' icon=''
supports-screens: 'small' 'normal' 'large'
locales: '--_--' 'ja' 'de' 'he' 'sk' 'el' 'nl' 'ko' 'fr' 'tr' 'es' 'it' 'pt' 'hu' 'ru' 'sv' 'fr_CA' 'zh_HK' 'zh_CN' 'pt_BR' 'es_US' 'zh_TW'
densities: '120' '160' '240'
But here it says library includes google maps api as well. So I'm not sure why I'm not able to install this apk file.
Android :: Build Failure - Got Error
I followed instructions from here. After $ repo sync I tried to build it with $ make, but got this error:
Using Ubuntu 10.04 LTS.
UPD: I found a discussion, that claims, that problem could be that I'm having 64bit libs on my 32bit system.
How do I figure out, if that libz.so.220.127.116.11 is the right lib, and in case I have to replace it with the right one, how do I do it?
Android :: Failure On Loading Library ?
I have a similar problem to this question, but slightly different. I have compiled a .so library to use with JNI. Because it is large (15 MB), I am putting it on the SDCard instead of in the standard application place.
The file is called libSample.so and it's located at /data/library/libSample.so
I load it in a static initialization block:
Here's the relevant logcat output:
I read the post about can android load dll's from sdcard in native mode which said that the sdcard cannot be used to load libraries, so I moved the .so into /data/data/com.example.hellojni/lib/libSample.so (the private app data storage location). No change:
What I don't understand is that clearly the library exists, and the OS is trying to load it ... so what would make it fail?
Following the advice of one of the commentors, I tried attaching via strace to get more detailed error information. The log can be found as a github gist.
The error appears to be on lines 47-51:
Here's the readelf of the library:
Android :: SSL Failure Trying To Connect With GAE/Java
I am trying to connect an Android application with a secured HTTPS remote service that is hosted in Google App Engine for Java (https://applicationname.appspot.com), using the HTTPClient 4 implementation that comes with Android. The certificate is signed and valid form *.appspot.com.
I am using Android 2.1 in a real device (HTC Hero), and I get the following error: SSL23_GET_SERVER_HELLO:unknown protocol.
This is part of my code:
This is the complete stack trace:
Android : Attaching Database Gives Failure 14
Does the API restrict you from attaching to another database while you have one open?I tried the SQLite3 command "attach database .../contacts.db as aliasdb" .This works in the adb shell and I'm able to perform joins with tables in this database. When I use the same command via the API using "db.execSQL(attach database/contacts.db as aliasdb)" it gives me failure 14.Is this restricted on purpose or am I making a mistake somewhere?
Android :: Moving Cursor Adapter Cursor Creation To Background Thread
The structure of some of my activities is a simple ListView with a custom CursorAdapter. The cursor is created in onCreate() on the activity from a SQLite database. The problem is that querying the SQLite database can be quite slow at times with lots of data (and let's assume I've already optimized the sql query as much as possible). Because it occurs in onCreate() on the UI thread, I get ugly black screens when opening the activity, which sometimes turn into ANRs, on a slow phone like the G1. I want to load the cursor in a background and show "Loading.." on screen while doing so. I saw AsyncQueryHandler used extensively in the framework, but this seems a solution geared more towards Content Providers and not application-local SQLite databases. I then thought of trying to load the cursor in a background thread, but realize that this might be problematic, as the CursorAdapter should be instantiated in onCreate() and should take a cursor as a parameter. The latest thought I had was to instantiate an empty MatrixCursor in onCreate() and pass that to the cursor adapter, while kicking off a thread/TimerTask to query the database. Then, on database cursor load, call cursorAdapter.change Cursor to the properly filled cursor. This doesn't seem very elegant and seems quite wasteful, however.
Android :: Socket Is Not Connected
I am trying to use httpclient to hit a http link. For some reason I keep on geting this "socket is not connected" error. I am not sure about the reason for this error. Can any one help? This error also occurs when I start using the car navigation app or whenever I try to forward calls.
Android :: How To Connect G1 With Pc By Socket
I have a java server which run on the pc, and a client which run on the G1. Now, G1 is connected to the pc with a usb cable. I want to use socket to let them communicate with each other, as what I did in the emulator. But now G1 cannot find the server through the ip "10.0.2.2".InetAddress serverAddr = InetAddress.getByName ("10.0.2.2"); ClientSocket = new Socket(serverAddr,SERVERPORT); The ClientSocket is null. What's the IP of the pc now?
Android :: Upload Failure On Reset Phone
I and my customer have had the same problem uploading new versions of my App. tried and failed: Load from website load from USB using adb install reset G1 to factory setting. After reset of phone the error message for ADB is Failure [INSTALL_FAILED_ALREADY_EXISTS].
Android :: Failure To Connect Camera Service
I'm trying to write a basic camera app. The problem that I am facing is that it works fine in emulator but on the phone (Nexus one) it fails.
The point of failure is the very first call, i.e. Camera.open(). It fails on the phone saying "Failed to connect to camera service". Any idea what could be wrong? (BTW, I am calling this from my activity's onCreate funtion itself, could that be an issue?)
For the information, I do have the necessary Camera permissions specified in my manifest xml file.
Android :: Failure Rate On 32GB MicroSD
Hey folks HumanMachine here with a little query for those of you who were lucky enough to have picked up a 32GB MicroSD for your phones.I had, and lost mine, in the course of two days. Short story incoming. TLDR Below I was using my phone at work and decided to change my Live Wallpaper, I'd downloaded a few of them and was going through them just to see how they looked in motion. I remember specifically looking at the "Starfield" wallpaper. I then selected the "Battery - Couple the ship's energy source with phone's battery" To see what the option did. I backed out to apply the Wallpaper. And the Droid X locks. Weird I thought, maybe she's just lagged.Turned out a lot worse than that. She was just straight up frozen. Stuck on this unusable frozen starfield. I couldn't quite remember how to reboot the phone. or even if it were possible, Couldn't power her down, so I removed her battery, figured that would be enough to get her back to life.I was met with a message, once the phone loaded up. "SD Card blank or has unsupported filesystem" Not the first time I've seen this issue pop up on the android forums. I immediately popped the MicroSD card into my little USB dongle and attempted to access the MicroSD. Shows up in "My Computer" just fine. but when I tried to access it? "Please insert disc" et cetera et cetera.
I try to format. No dice, Computer won't even find the thing. Try my SD formatter, no dice.Stick the 16 GB card back into the phone, and we're sailing again. And here I am staring sadly at the card.I tried for about an hour more to breathe some life into it. I just couldn't get the computer or phone to read the card. Same error messages.TLDR For those of you who wanted to skip the story SD Card died. pathetically, didn't lose much but still. My question, do we have any idea what the failure rates are on these bad boys? I didn't mistreat or even do much with mine before this issue came up. Hopefully I just had a lemon. Unfortunately, the store I got mine at. Verizon store actually, didn't have any, nor do they know when they will get a shipment of them.I'm bummed. go figure. Time to play the waiting game.
Android :: Adb Install Failure With Return Code -12
I just installed android sdk1.5 on a ubuntu 8.04 machine. The IDE is eclipse3.4 with ADT. I created a HelloAndroid project with only the automatically generated code. It compiled successfully and worked on the emulator. But when I tried to install the apk to my G1. It failed with only return code [-12]. I tried anroid 1.1 and android 1.5. The results are the same. But my G1 works fine when the sdk is 1.1. Any idea?
Android :: Socket Freezes Using GSM Connection
I'm working on application that uses a socket connection.I've implemented 2 different Threads for the read() and the write() methods so they are not being blocked by the read.Everything is working well on the WiFi connection but when I switch to GSM connection the connection becomes unstable without any exception being thrown. It means that there are freezes.the write and read seems to work but no data is actually being piped.
Android :: How To Manage Connection To A Socket?
I would like to know what is the recommendation for socket connection management in Android?In our App we would like to be connected to a TCP/IP server when our app is in the foreground or paused. So, create a connection to a TCP/ IP server when the App starts basically, On Create of the launcher activity. However, we do not want to create a new connection and close connection every time an activity is created, paused, destroyed or orientation changed. So, we save the connection object in the App class and the activities will reuse the same connection.Question is when do I close it? I would like to close the socket when the App is "paused", "stopped" or "destroyed". The problem is these messages are not sent in the App context. How can I figure out if the App is in foreground or not? Even the "Terminated" event for an App is not guaranteed to be delivered. So, in that case how do I know when to disconnect?