Android Question Process has died

EvgenyB4A

Active Member
Licensed User
Longtime User
I need my application run 24/7.
But after some hours of running (4,5 or 6 hours) the application fails without any runtime error. I attach the unfiltered log.
Please help to find out any hint to the reason of app death.
The keyword to find in text: has died
 

Attachments

  • log of app died.txt
    131.3 KB · Views: 161

DonManfred

Expert
Licensed User
Longtime User
without any runtime error
wrong

for example:
org.apache.http.conn.ConnectTimeoutException: Connect to /195.28.181.157:19998 timed out
at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:121)
at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:144)
at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
at anywheresoftware.b4a.http.HttpClientWrapper.executeWithTimeout(HttpClientWrapper.java:316)
at anywheresoftware.b4a.http.HttpClientWrapper.access$0(HttpClientWrapper.java:314)
at anywheresoftware.b4a.http.HttpClientWrapper$ExecuteHelper.run(HttpClientWrapper.java:215)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:442)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
at java.util.concurrent.FutureTask.run(FutureTask.java:137)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
at java.lang.Thread.run(Thread.java:856)

and also

javax.net.ssl.SSLException: Read error: ssl=0x56236b40: I/O error during system call, Connection reset by peer
at org.apache.harmony.xnet.provider.jsse.NativeCrypto.SSL_read(Native Method)
at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl$SSLInputStream.read(OpenSSLSocketImpl.java:675)
at org.apache.http.impl.io.AbstractSessionInputBuffer.fillBuffer(AbstractSessionInputBuffer.java:103)
at org.apache.http.impl.io.AbstractSessionInputBuffer.readLine(AbstractSessionInputBuffer.java:191)
at org.apache.http.impl.conn.DefaultResponseParser.parseHead(DefaultResponseParser.java:82)
at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:174)
at org.apache.http.impl.AbstractHttpClientConnection.receiveResponseHeader(AbstractHttpClientConnection.java:180)
at org.apache.http.impl.conn.DefaultClientConnection.receiveResponseHeader(DefaultClientConnection.java:235)
at org.apache.http.impl.conn.AbstractClientConnAdapter.receiveResponseHeader(AbstractClientConnAdapter.java:259)
at org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:279)
at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:121)
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:428)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
at anywheresoftware.b4a.http.HttpClientWrapper.executeWithTimeout(HttpClientWrapper.java:316)
at anywheresoftware.b4a.http.HttpClientWrapper.access$0(HttpClientWrapper.java:314)
at anywheresoftware.b4a.http.HttpClientWrapper$ExecuteHelper.run(HttpClientWrapper.java:215)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:442)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
at java.util.concurrent.FutureTask.run(FutureTask.java:137)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
at java.lang.Thread.run(Thread.java:856)

i did not look further....
 
Upvote 0

eps

Expert
Licensed User
Longtime User
Is this an Activity or a Service? Please can you provide a little more detail about what you're trying to achieve and how you're trying to achieve this please.
 
Upvote 0

EvgenyB4A

Active Member
Licensed User
Longtime User
Is this an Activity or a Service? Please can you provide a little more detail about what you're trying to achieve and how you're trying to achieve this please.
This is an Activity. It displays the panel with images. Each 65 sec the app send HTTP request to our server to inform the app lives.
 
Upvote 0

EvgenyB4A

Active Member
Licensed User
Longtime User
It is not clear why it crashed. See my answer here about the UI Cloud which is an app running on multiple devices for months: https://www.b4x.com/android/forum/t...do-i-have-a-memory-problem.50573/#post-316456
Usually I use the similar solution. I have a watchdog app that is installed as homescreen(launcher). Its service(not foreground) has UDP socket that receives packets from main app UDP socket every 1 second. If the packets will not arrive during 10 seconds the watchdog service restart all the Android.
Is it correct enough?

For now I uninstalled the watchdog to test where and why my main app crash.
 
Upvote 0

EvgenyB4A

Active Member
Licensed User
Longtime User
There are many warning messages in the attached log like: "Skipped xx frames! The application may be doing too much work on its main thread."
Is this something to pay special attention and need to care?
 
Upvote 0
Top