I have an Android app developed by me a couple a years ago. It is still on Play Store and I keep it updated fixing minor bugs with Eclipse and the old Android Development Tools (I never used Android Studio).
My app on first start-up starts downloading data from the server and save it on internal db (I used an AyncTask and here is the source code: https://pastebin.com/cKqXNYxm). All go well on most phones.
But on some phones the download fails and then the user can't use the app. I get one of these phones and I attached it to LogCat to see what happen. Here is the log:
04-04 21:07:50.238: I/CastMediaRouteProvider(2082): in onDiscoveryRequestChanged: request=DiscoveryRequest{ selector=MediaRouteSelector{ controlCategories=[android.media.intent.category.LIVE_VIDEO, android.media.intent.category.REMOTE_PLAYBACK, com.google.android.gms.cast.CATEGORY_CAST/08FF1091, com.google.android.gms.cast.CATEGORY_CAST/4574A331] }, activeScan=false, isValid=true }
04-04 21:07:50.251: W/CastMediaRouteProvider(2082): Not a Cast compatible category: android.media.intent.category.LIVE_VIDEO
04-04 21:07:50.251: I/CastMediaRouteProvider(2082): Logging initial network connection state.
04-04 21:07:50.347: I/CastMediaRouteProvider(2082): Network connectivity changed
04-04 21:07:50.372: I/DeviceScanner(2082): [MDNS] Filter criteria: 08FF1091,CC1AD845,4574A331
04-04 21:07:50.372: I/DeviceScanner(2082): [MDNS] updateScannerState: No filter criteria was added.
04-04 21:07:50.372: I/DeviceScanner(2082): [MDNS] updateScannerState: No filter criteria was removed.
04-04 21:07:50.479: W/MdnsClient_Cast(2082): #acquireLock. Multicast lock not held. Acquiring. Subtypes:"4574A331,CC1AD845,08FF1091"
04-04 21:07:50.501: I/DeviceScanner(2082): [CastNearby] Filter criteria: 08FF1091,CC1AD845,4574A331
04-04 21:07:50.501: I/DeviceScanner(2082): [CastNearby] updateScannerState: No filter criteria was added.
04-04 21:07:50.501: I/DeviceScanner(2082): [CastNearby] updateScannerState: No filter criteria was removed.
04-04 21:08:08.860: W/IcingInternalCorpora(2082): getNumBytesRead when not calculated.
04-04 21:08:09.020: I/Icing(2082): Usage reports 0 indexed 0 rejected 0 imm upload false
04-04 21:08:09.063: I/Icing(2082): Usage reports 0 indexed 0 rejected 0 imm upload false
04-04 21:08:09.085: I/Icing(2082): Usage reports 0 indexed 0 rejected 0 imm upload false
04-04 21:08:09.100: I/Icing(2082): Usage reports 0 indexed 0 rejected 0 imm upload false
04-04 21:08:09.135: W/IcingInternalCorpora(2082): getNumBytesRead when not calculated.
04-04 21:08:09.265: I/art(1879): Background sticky concurrent mark sweep GC freed 49907(2MB) AllocSpace objects, 18(288KB) LOS objects, 11% free, 22MB/26MB, paused 7.887ms total 67.577ms
04-04 21:08:10.048: I/Icing(2082): Indexing 26F5DFBF7CB0FE13B1ED2D2D8BA3F397144A57D1 from com.google.android.gms
04-04 21:08:10.078: W/Icing(2082): CLD2 bad utf8
04-04 21:08:10.114: I/Icing(2082): Indexing done 26F5DFBF7CB0FE13B1ED2D2D8BA3F397144A57D1
04-04 21:08:10.546: I/WearableService(1879): Wear is not allowed to run on this device. Not starting Wear service.
04-04 21:08:10.547: D/WearableService(1879): callingUid 10020, callindPid: 1879
04-04 21:08:23.830: I/CastMediaRouteProvider(2082): in onDiscoveryRequestChanged: request=null
04-04 21:08:23.840: W/MdnsClient_Cast(2082): Multicast lock held. Releasing. Subtypes:"4574A331,CC1AD845,08FF1091"
04-04 21:08:23.872: W/MdnsClient(2082): unicast receiver thread is already dead.
04-04 21:09:06.643: W/IcingInternalCorpora(2082): getNumBytesRead when not calculated.
04-04 21:09:06.814: I/Icing(2082): Usage reports 0 indexed 0 rejected 0 imm upload false
04-04 21:09:06.848: I/Icing(2082): Usage reports 0 indexed 0 rejected 0 imm upload false
04-04 21:09:06.881: I/Icing(2082): Usage reports 0 indexed 0 rejected 0 imm upload false
04-04 21:09:06.898: I/Icing(2082): Usage reports 0 indexed 0 rejected 0 imm upload false
04-04 21:09:06.958: W/IcingInternalCorpora(2082): getNumBytesRead when not calculated.
04-04 21:09:07.841: I/Icing(2082): Indexing 26F5DFBF7CB0FE13B1ED2D2D8BA3F397144A57D1 from com.google.android.gms
04-04 21:09:07.864: W/Icing(2082): CLD2 bad utf8
04-04 21:09:07.876: I/Icing(2082): Indexing done 26F5DFBF7CB0FE13B1ED2D2D8BA3F397144A57D1
04-04 21:09:43.012: W/GCoreFlp(1879): No location to return for getLastLocation()
04-04 21:09:51.519: W/IcingInternalCorpora(2082): getNumBytesRead when not calculated.
04-04 21:09:51.629: I/Icing(2082): Usage reports 0 indexed 0 rejected 0 imm upload false
04-04 21:09:51.674: I/Icing(2082): Usage reports 0 indexed 0 rejected 0 imm upload false
04-04 21:09:51.712: I/Icing(2082): Usage reports 0 indexed 0 rejected 0 imm upload false
04-04 21:09:51.767: I/Icing(2082): Usage reports 0 indexed 0 rejected 0 imm upload false
04-04 21:09:51.826: W/IcingInternalCorpora(2082): getNumBytesRead when not calculated.
04-04 21:09:52.662: I/Icing(2082): Indexing 26F5DFBF7CB0FE13B1ED2D2D8BA3F397144A57D1 from com.google.android.gms
04-04 21:09:52.682: W/Icing(2082): CLD2 bad utf8
04-04 21:09:52.699: I/Icing(2082): Indexing done 26F5DFBF7CB0FE13B1ED2D2D8BA3F397144A57D1
04-04 21:11:36.806: D/BluetoothAdapter(1879): 341170672: getState() : mService = null. Returning STATE_OFF
04-04 21:13:50.296: V/NativeCrypto(1879): Read error: ssl=0xb84d38c0: I/O error during system call, Connection reset by peer
04-04 21:13:50.315: V/NativeCrypto(1879): SSL shutdown failed: ssl=0xb84d38c0: I/O error during system call, Broken pipe
04-04 21:13:50.333: W/GCM(1879): Lowering wifi heartbeat interval 1 notch to 230000, good=0 bad=2
04-04 21:18:17.073: D/BluetoothAdapter(1879): 341170672: getState() : mService = null. Returning STATE_OFF
04-04 21:18:20.076: D/BluetoothAdapter(1879): 341170672: getState() : mService = null. Returning STATE_OFF
04-04 21:18:20.528: I/Authzen(2082): [DeviceStateSyncManager] Device state fast sync is disabled
04-04 21:18:20.581: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:18:20.582: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:18:20.582: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:18:20.582: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:18:20.582: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:18:20.583: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:18:20.583: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:18:20.583: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:18:20.583: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:18:20.586: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:27:48.016: D/BluetoothAdapter(1879): 341170672: getState() : mService = null. Returning STATE_OFF
04-04 21:29:01.013: D/BluetoothAdapter(1879): 341170672: getState() : mService = null. Returning STATE_OFF
04-04 21:29:03.196: I/Authzen(2082): [DeviceStateSyncManager] Device state fast sync is disabled
04-04 21:29:03.233: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:29:03.233: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:29:03.233: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:29:03.234: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:29:03.234: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:29:03.234: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:29:03.235: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:29:03.235: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:29:03.235: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:29:03.236: I/DeviceCache(2082): Unable to convert the the network interface's MAC Address to string. MAC address cannot be null.
04-04 21:29:04.014: D/BluetoothAdapter(1879): 341170672: getState() : mService = null. Returning STATE_OFF
04-04 21:29:10.297: W/GeofencerStateMachine(1879): Ignoring removeGeofence because network location is disabled.
04-04 21:29:11.075: E/WorkSourceUtil(2082): Could not find package: it.myapp.app
04-04 21:29:11.076: I/Icing(2082): doRemovePackageData it.myapp.app
04-04 21:29:11.133: I/LocationSettingsChecker(2082): Removing dialog suppression flag for package it.myapp.app
04-04 21:29:11.138: D/Wear_Controller(2082): Received broadcast action=android.intent.action.PACKAGE_REMOVED and uri=it.myapp.app
04-04 21:29:11.295: E/NetworkScheduler.SR(1879): Invalid parameter app
04-04 21:29:11.296: E/NetworkScheduler.SR(1879): Invalid package name : Perhaps you didn't include a PendingIntent in the extras?
04-04 21:29:11.461: W/IcingInternalCorpora(2082): getNumBytesRead when not calculated.
04-04 21:29:11.467: I/Icing(2082): Usage reports 0 indexed 0 rejected 0 imm upload false
04-04 21:29:11.475: I/Icing(2082): Usage reports 0 indexed 0 rejected 0 imm upload false
04-04 21:29:12.207: I/WearableService(1879): Wear is not allowed to run on this device. Not starting Wear service.
04-04 21:29:12.207: D/WearableService(1879): callingUid 10020, callindPid: 1879
04-04 21:29:12.482: I/Icing(2082): Indexing 11154CFA753891357620E30C887251401ECA34E6 from com.google.android.gms
04-04 21:29:12.517: I/Icing(2082): Indexing done 11154CFA753891357620E30C887251401ECA34E6
04-04 21:29:18.135: W/PlatformStatsUtil(2082): Could not retrieve Usage & Diagnostics setting. Giving up.
04-04 21:29:22.585: E/NetworkScheduler.SR(1879): Invalid parameter app
04-04 21:29:22.585: E/NetworkScheduler.SR(1879): Invalid package name : Perhaps you didn't include a PendingIntent in the extras?
04-04 21:29:22.605: I/iu.Environment(2082): update battery state; isPlugged? true*
04-04 21:29:22.660: I/iu.FingerprintManager(2082): Start processing all media
04-04 21:29:22.870: I/iu.FingerprintManager(2082): Start processing media store URI: content://media/external/images/media
04-04 21:29:22.980: I/iu.UploadsManager(2082): num queued entries: 0
04-04 21:29:23.041: I/iu.UploadsManager(2082): num updated entries: 0
04-04 21:29:23.086: W/SQLiteConnectionPool(2082): A SQLiteConnection object for database '/data/data/com.google.android.gms/databases/auto_complete_suggestions.db' was leaked! Please fix your application to end transactions in progress properly and to close the database when it is no longer needed.
04-04 21:29:23.091: W/SQLiteConnectionPool(2082): A SQLiteConnection object for database '/data/data/com.google.android.gms/databases/help_responses.db.18' was leaked! Please fix your application to end transactions in progress properly and to close the database when it is no longer needed.
04-04 21:29:23.094: W/SQLiteConnectionPool(2082): A SQLiteConnection object for database '/data/data/com.google.android.gms/databases/metrics.db' was leaked! Please fix your application to end transactions in progress properly and to close the database when it is no longer needed.
04-04 21:29:23.107: I/iu.SyncManager(2082): NEXT; no task
04-04 21:29:23.171: W/PlatformStatsUtil(2082): Could not retrieve Usage & Diagnostics setting. Giving up.
04-04 21:29:23.208: I/iu.FingerprintManager(2082): Start processing media store URI: content://media/external/video/media
04-04 21:29:23.214: I/iu.FingerprintManager(2082): Start processing media store URI: content://media/phoneStorage/images/media
04-04 21:29:23.216: I/iu.FingerprintManager(2082): Start processing media store URI: content://media/phoneStorage/video/media
04-04 21:29:23.237: I/iu.FingerprintManager(2082): Finished generating fingerprints; 0,577 seconds
04-04 21:29:23.238: I/iu.FingerprintManager(2082): numSeen=1872 numGenerated=3 numDeleted=11 numFailed=0
04-04 21:29:33.041: W/PlatformStatsUtil(2082): Could not retrieve Usage & Diagnostics setting. Giving up.
04-04 21:29:35.099: D/Wear_Controller(2082): Received broadcast action=android.intent.action.PACKAGE_ADDED and uri=it.myapp.app
04-04 21:29:35.251: I/WearableService(1879): Wear is not allowed to run on this device. Not starting Wear service.
04-04 21:29:35.254: D/WearableService(1879): callingUid 10020, callindPid: 1879
04-04 21:29:35.279: I/Icing(2082): Usage reports 0 indexed 0 rejected 0 imm upload false
04-04 21:29:35.295: I/Icing(2082): Usage reports 0 indexed 0 rejected 0 imm upload false
04-04 21:29:35.320: W/IcingInternalCorpora(2082): getNumBytesRead when not calculated.
04-04 21:29:36.306: I/Icing(2082): Indexing 11154CFA753891357620E30C887251401ECA34E6 from com.google.android.gms
04-04 21:29:36.402: I/Icing(2082): Indexing done 11154CFA753891357620E30C887251401ECA34E6
04-04 21:29:40.870: W/PlatformStatsUtil(2082): Could not retrieve Usage & Diagnostics setting. Giving up.
I think the problem could be these messages:
04-04 21:29:11.295: E/NetworkScheduler.SR(1879): Invalid parameter app
04-04 21:29:11.296: E/NetworkScheduler.SR(1879): Invalid package name : Perhaps you didn't include a PendingIntent in the extras?
...or maybe could be something related to SSL connection:
04-04 21:13:50.296: V/NativeCrypto(1879): Read error: ssl=0xb84d38c0: I/O error during system call, Connection reset by peer
04-04 21:13:50.315: V/NativeCrypto(1879): SSL shutdown failed: ssl=0xb84d38c0: I/O error during system call, Broken pipe
I can't figure out what could be the problem. I tried several devices and here is the result:
It works on the following phones:
- Huawei: 6.0
- Samsung A5: 6.0.1
- One Plus 2: 6.0.1
- Asus Zenphone: 6.1
- One Plus: 3 7.0
- HTC One: 7.0
It doens't work on following phones (it crashes during AsynTask execution):
- Samsung S3 Neo 4.4.2
- Asus 5.0.2
- Samsung S2 5.1.1
- Samsung Neo 5.1.1
Another thing that maybe is good to know for troubleshooting is that about 2 months ago I enabled an SSL certificate on my hosting, where the app get the data from.
I have already searched for similar questions about this problem, but none helped me. Since in most phones the app works with no problem, I can't figure why on old version of Android it crashes with that LogCat. Any idea?