{ "id": "155747", "key": "TIMOB-20579", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [], "resolution": { "id": "3", "description": "The problem is a duplicate of an existing issue.", "name": "Duplicate" }, "resolutiondate": "2018-10-31T00:10:00.000+0000", "created": "2016-03-15T13:42:29.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [], "versions": [], "issuelinks": [ { "id": "56439", "type": { "id": "10002", "name": "Duplicate", "inward": "is duplicated by", "outward": "duplicates" }, "inwardIssue": { "id": "171142", "key": "TIMOB-25845", "fields": { "summary": "Android: Non-production app builds with modules crash on startup if TLS 1.1 or higher is required for Internet access", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "Critical", "id": "1" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "56437", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "153222", "key": "TIMOB-19998", "fields": { "summary": "Android: Titanium Verify needs updating", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "Critical", "id": "1" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "msamah", "key": "msamah", "displayName": "Ashraf Abu", "active": false, "timeZone": "Asia/Singapore" }, "updated": "2018-10-31T00:10:00.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [], "description": "When building for _test_ or _development_ calls are made by the TiVerify class to verify modules. This fails on the Samsung S2 (our only device running SDK 16/4.1), seemingly due to a TLS error, and causes the app to crash.\r\n\r\nThe crash does not occur when using a middleware proxy (Charles).\r\n\r\nCommenting out the following lines fixes the issue:\r\n{{112-115 of ~/Library/Application\\ Support/Titanium/mobilesdk/osx/5.2.0.GA/android/templates/App.java\r\n 87- 90 of ~/Library/Application\\ Support/Titanium/mobilesdk/osx/5.2.0.GA/android/templates/build/App.java}}\r\n\r\nE/AndroidRuntime( 5046): Process: com.firstutility.firstutility, PID: 5046 \r\nE/AndroidRuntime( 5046): java.lang.IncompatibleClassChangeError: Class 'ti.modules.titanium.network.NonValidatingSSLSocketFactory' does not implement interface 'org.apache.http.conn.scheme.SocketFactory' in call to 'java.net.Socket org.apache.http.conn.scheme.SocketFactory.createSocket()' (declaration of 'java.lang.reflect.ArtMethod' appears in /system/framework/core-libart.jar) \r\nE/AndroidRuntime( 5046): at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:145) \r\nE/AndroidRuntime( 5046): at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:169) \r\nE/AndroidRuntime( 5046): at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:124) \r\nE/AndroidRuntime( 5046): at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:365) \r\nE/AndroidRuntime( 5046): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:560) \r\nE/AndroidRuntime( 5046): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:514) \r\n*E/AndroidRuntime( 5046): at org.appcelerator.titanium.TiVerify.run(Unknown Source) *\r\nE/AndroidRuntime( 5046): at java.util.Timer$TimerImpl.run(Timer.java:284)", "attachment": [], "flagged": false, "summary": "Android: \"ti.verify\" causes crash on startup when connecting to Internet via TLS 1.1 or higher", "creator": { "name": "cgedrim", "key": "cgedrim", "displayName": "Christopher Gedrim", "active": true, "timeZone": "Europe/London" }, "subtasks": [], "reporter": { "name": "cgedrim", "key": "cgedrim", "displayName": "Christopher Gedrim", "active": true, "timeZone": "Europe/London" }, "environment": "Android SDK 16 (4.1)\r\nSamsung S2\r\nTi SDK 5.2.0.GA\r\nAlloy 1.7.35\r\nOSX 10.10.5 (14F27)", "comment": { "comments": [ { "id": "379747", "author": { "name": "sdarda", "key": "sdarda", "displayName": "Sharif AbuDarda", "active": false, "timeZone": "Asia/Dhaka" }, "body": "Hello,\r\n\r\nYou haven't provide a sample test case. Please provide a test code and steps to follow for regenerating the issue. We will let you know if we can regenerate the issue in our environment. Also, Please provide your platform Information.\r\n\r\nThanks.\r\n", "updateAuthor": { "name": "sdarda", "key": "sdarda", "displayName": "Sharif AbuDarda", "active": false, "timeZone": "Asia/Dhaka" }, "created": "2016-03-15T14:10:03.000+0000", "updated": "2016-03-15T14:10:22.000+0000" }, { "id": "379751", "author": { "name": "cgedrim", "key": "cgedrim", "displayName": "Christopher Gedrim", "active": true, "timeZone": "Europe/London" }, "body": "Interestingly, having changed nothing (and not patching the files as stated above), we're now not seeing the issue.\r\n\r\n_The issue was seen all day Friday 11th and Monday 14th March 2016, which patching the files fixed_", "updateAuthor": { "name": "cgedrim", "key": "cgedrim", "displayName": "Christopher Gedrim", "active": true, "timeZone": "Europe/London" }, "created": "2016-03-15T15:20:22.000+0000", "updated": "2016-03-15T15:20:22.000+0000" }, { "id": "379857", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "[~hpham] you might want to have a look at this since you've been dealing with {{NonValidatingSSLSocketFactory}}.", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2016-03-16T10:16:28.000+0000", "updated": "2016-03-16T10:16:28.000+0000" }, { "id": "379971", "author": { "name": "ltaylor", "key": "ltaylor", "displayName": "Luke Taylor", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I have seen the exact same issue with an almost identical crash log:\r\n\r\n[ERROR] AndroidRuntime: FATAL EXCEPTION: Timer-0\r\n[ERROR] AndroidRuntime: Process: com.firstutility.firstutility, PID: 30059\r\n[ERROR] AndroidRuntime: java.lang.IncompatibleClassChangeError: Class 'ti.modules.titanium.network.NonValidatingSSLSocketFactory' does not implement interface 'org.apache.http.conn.scheme.SocketFactory' in call to 'java.net.Socket org.apache.http.conn.scheme.SocketFactory.createSocket()' (declaration of 'java.lang.reflect.ArtMethod' appears in /system/framework/core-libart.jar)\r\n[ERROR] AndroidRuntime: \tat org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:189)\r\n[ERROR] AndroidRuntime: \tat org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:172)\r\n[ERROR] AndroidRuntime: \tat org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:130)\r\n[ERROR] AndroidRuntime: \tat org.apache.http.impl.client.DefaultRequestDirector.executeOriginal(DefaultRequestDirector.java:1317)\r\n[ERROR] AndroidRuntime: \tat org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:707)\r\n[ERROR] AndroidRuntime: \tat org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:694)\r\n[ERROR] AndroidRuntime: \tat org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:542)\r\n[ERROR] AndroidRuntime: \tat org.appcelerator.titanium.TiVerify.run(Unknown Source)\r\n[ERROR] AndroidRuntime: \tat java.util.Timer$TimerImpl.run(Timer.java:284)\r\n\r\n[ERROR] Sensors: ~SensorEventQueue 0\r\n[ERROR] E/ : BitTube(): close receivedFd (55)\r\n\r\n\r\nDevice Specification (at time of error):\r\n\r\nDevice Name: Galaxy S5 Neo\r\nModel Number: SM-G903F\r\nAndroid Version: 5.1.1\r\n\r\nAdditional information:\r\n\r\nAppcelerator : 5.2.0\r\nTitanium CLI: v5.0.6\r\nAlloy: 1.7.35\r\nJava: 1.8.0_74\r\nPlatform tools: v23.1\r\nBuild tools: v22.0.1\r\n\r\n\r\n\r\n", "updateAuthor": { "name": "ltaylor", "key": "ltaylor", "displayName": "Luke Taylor", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-03-17T10:59:17.000+0000", "updated": "2016-03-17T10:59:17.000+0000" }, { "id": "381169", "author": { "name": "rpl", "key": "rpl", "displayName": "roeland p", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "I have this issue when using the new compiled backport for 3.5.x => 3.5.2.v20160308093511 when using modules. About a second after window creation the TiVerify module is called and verboses: 'Verifying module licenses' after which it 'FATAL ERROR's .... \" \r\n\r\n{quote}\r\n03-31 07:23:53.955: W/TiVerify(5671): (Timer-0) [4997,4997] Verifying module licenses...\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): FATAL EXCEPTION: Timer-0\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): Process: org.example.appname.android, PID: 5671\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): java.lang.NoClassDefFoundError: Failed resolution of: Lti/modules/titanium/network/NonValidatingSSLSocketFactory;\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): \tat org.appcelerator.titanium.TiVerify.run(Unknown Source)\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): \tat java.util.Timer$TimerImpl.run(Timer.java:284)\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): Caused by: java.lang.ClassNotFoundException: Didn't find class \"ti.modules.titanium.network.NonValidatingSSLSocketFactory\" on path: DexPathList[[zip file \"/data/app/org.example.appname.android-2/base.apk\"],nativeLibraryDirectories=[/data/app/org.example.appname.android-2/lib/x86, /data/app/org.example.appname.android-2/base.apk!/lib/x86, /vendor/lib, /system/lib]]\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): \tat dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): \tat java.lang.ClassLoader.loadClass(ClassLoader.java:511)\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): \tat java.lang.ClassLoader.loadClass(ClassLoader.java:469)\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): \t... 2 more\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): \tSuppressed: java.lang.ClassNotFoundException: ti.modules.titanium.network.NonValidatingSSLSocketFactory\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): \t\tat java.lang.Class.classForName(Native Method)\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): \t\tat java.lang.BootClassLoader.findClass(ClassLoader.java:781)\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): \t\tat java.lang.BootClassLoader.loadClass(ClassLoader.java:841)\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): \t\tat java.lang.ClassLoader.loadClass(ClassLoader.java:504)\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): \t\t... 3 more\r\n03-31 07:23:53.955: E/AndroidRuntime(5671): \tCaused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available\r\n03-31 07:23:53.970: I/TiRootActivity(5671): (main) [0,0] checkpoint, on root activity resume. activity = org.example.appname.android.AppnameAndroidActivity@42ce4ba\r\n{quote}\r\n\r\n", "updateAuthor": { "name": "rpl", "key": "rpl", "displayName": "roeland p", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2016-03-31T11:32:24.000+0000", "updated": "2016-03-31T11:35:02.000+0000" }, { "id": "381264", "author": { "name": "msamah", "key": "msamah", "displayName": "Ashraf Abu", "active": false, "timeZone": "Asia/Singapore" }, "body": "[~rpl] It seems you are still using a slightly older version of 3.5.2. You need a newer version that has that fix.", "updateAuthor": { "name": "msamah", "key": "msamah", "displayName": "Ashraf Abu", "active": false, "timeZone": "Asia/Singapore" }, "created": "2016-04-01T02:34:28.000+0000", "updated": "2016-04-01T02:34:28.000+0000" }, { "id": "381273", "author": { "name": "fokke", "key": "ID24224", "displayName": "Fokke", "active": true, "timeZone": "America/Los_Angeles" }, "body": "-deleted-", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2016-04-01T07:40:43.000+0000", "updated": "2016-04-01T07:42:02.000+0000" }, { "id": "381274", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "[~rpl] please use 3.5.2.v20160311103211 which is linked from:\r\n\r\nhttp://www.appcelerator.com/blog/2016/03/update-on-recent-google-security-alerts/#we", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2016-04-01T07:42:10.000+0000", "updated": "2016-04-01T07:42:10.000+0000" } ], "maxResults": 16, "total": 16, "startAt": 0 } } }