{ "id": "165518", "key": "TIMOB-24499", "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": "11", "description": "Is not a bug in our product", "name": "Not Our Bug" }, "resolutiondate": "2019-01-15T18:21:38.000+0000", "created": "2017-01-30T21:26:59.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [], "versions": [], "issuelinks": [], "assignee": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "updated": "2019-01-15T18:21:38.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": [ { "id": "13715", "name": "Hyperloop", "description": "Hyperloop project" } ], "description": "Hi there,\r\n\r\nI'm trying to use Hyperloop to integrate a third-party framework to the app, but it is not working.\r\n\r\nThe framework is a native Geolocation APIs from Android and iOS and send that data back to our systems , so our goal would be create a very simple app with our SDK integrated to Titanium to send the Geolocation data and register for push notifications to our platform, I'm new to the current Titanium version, so what would you recommend us to do to?\r\n\r\nI'm creating a sample project, a blank standard \"hello world\" project and follow the instructions to Hyperloop. The framework is developed on OBJC for iOS and for Android API 19\r\n\r\nIn this case I tried first the iOS one and it did fail on iMac running Sierra, latest xCode, latest Appcelerator and iOS SDK, executed the wizards for Android SDK/Simulators but it always gives me this error:\r\n\r\n[INFO] : [Hyperloop] generating class HandsMDM/HandsMDM\r\n[WARN] : [Hyperloop] Couldn't resolve typedef: ObjectType\r\n[WARN] : [Hyperloop] Not sure how to handle: name= firstObject type= typedef value= ObjectType\r\n[WARN] : [Hyperloop] Couldn't resolve typedef: ObjectType\r\n[WARN] : [Hyperloop] Not sure how to handle: name= lastObject type= typedef value= ObjectType\r\n\r\nAlso I attached a screenshot of the simulator error. \r\n\r\nThis is our apps.js on the project root \r\n{code:javascript}\r\nmodule.exports = {\r\n\thyperloop: {\r\n\t\tios: {\r\n\t\t\txcodebuild: {\r\n\t\t\t\tflags: {\r\n\t\t\t\t\tFRAMEWORK_SEARCH_PATHS: '../../src'\r\n\t\t\t\t},\r\n\t\t\t\tframeworks: [\r\n\t\t\t\t\t'HandsMDM'\r\n\t\t\t\t]\r\n\t\t\t},\r\n\t\t\tthirdparty: {\r\n\t\t\t\t'HandsMDM': {\r\n\t\t\t\t\tsource: ['src'],\r\n\t\t\t\t\theader: 'src',\r\n\t\t\t\t\tresource: 'src'\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n};\r\n{code}\r\n\r\nand our index.js\r\n{code:javascript}\r\nvar HandsMDM = require('HandsMDM/HandsMDM');\r\nHandsMDM.sharedManager();\r\nHandsMDM.debugMode = true;\r\nHandsMDM.track();\r\n{code}\r\n\r\nHere the apps info:\r\n\r\n{code}\r\nAppcelerator Command-Line Interface, version 6.1.0\r\nCopyright (c) 2014-2017, Appcelerator, Inc. All Rights Reserved.\r\n\r\nOperating System\r\n Name = Mac OS X\r\n Version = 10.11.6\r\n Architecture = 64bit\r\n # CPUs = 4\r\n Memory = 12.0GB\r\n\r\nNode.js\r\n Node.js Version = 4.6.0\r\n npm Version = 2.15.9\r\n\r\nAppcelerator CLI\r\n Installer = 4.2.8\r\n Core Package = 6.1.0\r\n\r\nTitanium CLI\r\n CLI Version = 5.0.11\r\n node-appc Version = 0.2.39\r\n\r\nTitanium SDKs\r\n 6.0.1.GA\r\n Version = 6.0.1\r\n Install Location = /Users/predicta/Library/Application Support/Titanium/mobilesdk/osx/6.0.1.GA\r\n Platforms = iphone, android, mobileweb\r\n git Hash = 265db0d\r\n git Timestamp = 12/20/2016 00:55\r\n node-appc Version = 0.2.39\r\n \r\nMac OS X\r\n Command Line Tools = installed\r\n\r\nIntel® Hardware Accelerated Execution Manager (HAXM)\r\n Installed = yes\r\n Memory Limit = 544 MB\r\n\r\nJava Development Kit\r\n Version = 1.7.0_80\r\n Java Home = /Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home\r\n\r\nGenymotion\r\n Path = not found\r\n Genymotion Executable = not found\r\n Genymotion Player = not found\r\n Home = not found\r\n\r\nVirtualBox\r\n Executable = not found\r\n Version = unknown\r\n\r\nAndroid SDK\r\n Android Executable = /Users/predicta/Library/android-sdk-macosx/tools/android\r\n ADB Executable = /Users/predicta/Library/android-sdk-macosx/platform-tools/adb\r\n SDK Path = /Users/predicta/Library/android-sdk-macosx\r\n\r\nAndroid NDK\r\n NDK Path = not found\r\n NDK Version = not found\r\n\r\nAndroid Platforms\r\n 1) android-23\r\n Name = Android 6.0\r\n API Level = 23\r\n Revision = 1\r\n Skins = HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800, WVGA854, WXGA720, WXGA800, WXGA800-7in, AndroidWearRound, AndroidWearRound360x360, AndroidWearRoun\r\nd400x400, AndroidWearRound480x480, AndroidWearRoundChin320x290, AndroidWearRoundChin320x300, AndroidWearRoundChin360x325, AndroidWearRoundChin360x326, AndroidWearRoundChin360x330\r\n, AndroidWearSquare, AndroidWearSquare240x240, AndroidWearSquare320x320\r\n ABIs = armeabi-v7a, x86, x86_64\r\n Path = /Users/predicta/Library/android-sdk-macosx/platforms/android-23\r\n\r\nAndroid Add-Ons\r\n None\r\n\r\nAndroid Emulators\r\n titanium_1_WVGA800\r\n Path = /Users/predicta/.android/avd/titanium_1_WVGA800.avd\r\n SDK Version = Android 6.0 (API level 23)\r\n ABI = armeabi-v7a\r\n Skin = wvga800\r\n SD Card = /Users/predicta/.android/avd/titanium_1_WVGA800.avd/sdcard.img\r\n Google APIs = no\r\n\r\nGenymotion Emulators\r\n None\r\n\r\nConnected Android Devices\r\n None\r\n\r\nXcode\r\n 8.2.1 (build 8C1002) - Xcode default\r\n Install Location = /Applications/Xcode.app/Contents/Developer\r\n iOS SDKs = 10.2\r\n iOS Simulators = 10.2\r\n Watch SDKs = 3.1\r\n Watch Simulators = 3.1\r\n Supported by TiSDK 6.0.1.GA = yes\r\n EULA Accepted = yes\r\n Teams = none\r\n \r\niOS Keychains\r\n login.keychain = /Users/predicta/Library/Keychains/login.keychain\r\n System.keychain = /Library/Keychains/System.keychain\r\n\r\niOS Development Certificates\r\n None\r\n\r\niOS Distribution Certificates\r\n None\r\n\r\nApple WWDR Certificate\r\n Apple WWDR = installed\r\n\r\nDevelopment iOS Provisioning Profiles\r\n None\r\n\r\nDistribution iOS Provisioning Profiles\r\n None\r\n\r\nAd Hoc iOS Provisioning Profiles\r\n None\r\n\r\niOS Simulators\r\n10.2\r\n iPad Retina (ipad)\r\n UDID = 5D4E3756-B0EC-45D1-A244-30D1E5999D04\r\n Supports Watch Apps = no\r\n iPad Air (ipad)\r\n UDID = CA27D66B-9C43-4CDF-95FC-5ABE672D61DE\r\n Supports Watch Apps = no\r\n iPad Air 2 (ipad)\r\n UDID = 283AB17C-4F91-4E7D-8823-B24CC0847CA3\r\n Supports Watch Apps = no\r\n iPad Pro (9.7 inch) (iPad Pro (9.7-inch)) (ipad)\r\n UDID = 93182EA8-A62E-4A63-A94A-A8F954983F78\r\n Supports Watch Apps = no\r\n iPad Pro (12.9 inch) (iPad Pro (12.9-inch)) (ipad)\r\n UDID = 3172C9DE-5A01-44A3-A8AD-923A89FA3831\r\n Supports Watch Apps = no\r\n iPhone 5 (iphone)\r\n UDID = F2DA8731-20C9-42C3-BD62-FCF18426F03C\r\n Supports Watch Apps = yes\r\n iPhone 5s (iphone)\r\n UDID = 43CC07F7-6F0E-4524-B360-EF4A246FE252\r\n Supports Watch Apps = yes\r\n iPhone 6 Plus (iphone)\r\n UDID = 0C619B45-699C-4918-B8A1-44E1ACCCE0C9\r\n Supports Watch Apps = yes\r\n iPhone 6 (iphone)\r\n UDID = B42F2AB7-24DA-44EF-A638-DC0A38DCD2A8\r\n Supports Watch Apps = yes\r\n iPhone 6s (iphone)\r\n UDID = 224B5EB3-8D72-4EE0-A27D-B9251BCB3ABE\r\n Supports Watch Apps = yes\r\n iPhone 6s Plus (iphone)\r\n UDID = 2DEFEE14-5FF5-46F0-A192-CFCD93D8860E\r\n Supports Watch Apps = yes\r\n iPhone SE (iphone)\r\n UDID = E98172E3-E8B6-41C6-962D-2BD32F058BE9\r\n Supports Watch Apps = yes\r\n iPhone 7 (iphone)\r\n UDID = EC1D83EB-764B-4664-8A57-8529DCD9F668\r\n Supports Watch Apps = yes\r\n iPhone 7 Plus (iphone)\r\n UDID = B4DB4DE3-4A0A-487B-B90D-E3B75DADF418\r\n Supports Watch Apps = yes\r\n\r\nWatchOS Simulators\r\n3.1\r\n Apple Watch - 38mm (watch)\r\n UDID = 67D591E4-7D41-4F38-8576-538600D99121\r\n Apple Watch - 42mm (watch)\r\n UDID = 4026C913-5F58-4A12-9C94-1E1C5DC00A69\r\n Apple Watch Series 2 - 38mm (watch)\r\n UDID = D8D58DAC-4D7E-4791-8786-7DF3FC0EF7F6\r\n Apple Watch Series 2 - 42mm (watch)\r\n UDID = DF62B50E-9DCC-4576-B02A-B4AA0D1BD7DD\r\n\r\nConnected iOS Devices\r\n None\r\n{code}", "attachment": [ { "id": "61339", "filename": "Captura de Tela 2017-01-30 às 5.02.21 PM.png", "author": { "name": "rogerio.coelho", "key": "rogerio.coelho", "displayName": "rogerio.coelho", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-01-30T21:24:57.000+0000", "size": 89665, "mimeType": "image/png" }, { "id": "61863", "filename": "HandsMDM.framework_for_development.tar.gz", "author": { "name": "rogerio.coelho", "key": "rogerio.coelho", "displayName": "rogerio.coelho", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-03-16T19:15:13.000+0000", "size": 155821, "mimeType": "application/x-gzip" }, { "id": "61862", "filename": "HandsMDM.framework_for_release.tar.gz", "author": { "name": "rogerio.coelho", "key": "rogerio.coelho", "displayName": "rogerio.coelho", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-03-16T19:15:13.000+0000", "size": 76735, "mimeType": "application/x-gzip" } ], "flagged": false, "summary": "Hyperloop: iOS - Unable to use a third-party framework with Hyperloop", "creator": { "name": "rogerio.coelho", "key": "rogerio.coelho", "displayName": "rogerio.coelho", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "rogerio.coelho", "key": "rogerio.coelho", "displayName": "rogerio.coelho", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "comment": { "comments": [ { "id": "405861", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "Hey [~rogerio.coelho], can you provide the framework for a closer look?", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-01-31T18:04:12.000+0000", "updated": "2017-01-31T18:04:12.000+0000" }, { "id": "405863", "author": { "name": "rogerio.coelho", "key": "rogerio.coelho", "displayName": "rogerio.coelho", "active": true, "timeZone": "America/Los_Angeles" }, "body": "@Hans Knöchel . Thanks for getting back. I attached it to the ticket. There is a plist file that need to be imported to the XCode project with the basic configuration for the framework, if it is not found or invalid, the framework does not crash, it starts and simply do not track the info we need, so on normal conditions, this should work. I can confirm the framework is working fine on a native OBJC project ", "updateAuthor": { "name": "rogerio.coelho", "key": "rogerio.coelho", "displayName": "rogerio.coelho", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-01-31T18:20:23.000+0000", "updated": "2017-02-01T17:37:13.000+0000" }, { "id": "406079", "author": { "name": "rogerio.coelho", "key": "rogerio.coelho", "displayName": "rogerio.coelho", "active": true, "timeZone": "America/Los_Angeles" }, "body": "@Hans Knöchel I forgot to mention that this framework is for simulators only, if need I can send the release one, they are the same, we just don't make a fat binary for the frameworks", "updateAuthor": { "name": "rogerio.coelho", "key": "rogerio.coelho", "displayName": "rogerio.coelho", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-02-01T23:26:29.000+0000", "updated": "2017-02-01T23:26:29.000+0000" }, { "id": "412803", "author": { "name": "sdarda", "key": "sdarda", "displayName": "Sharif AbuDarda", "active": false, "timeZone": "Asia/Dhaka" }, "body": "Hello, [~rogerio.coelho], Can you follow up your current status? Also, send a release version of the framework. ", "updateAuthor": { "name": "sdarda", "key": "sdarda", "displayName": "Sharif AbuDarda", "active": false, "timeZone": "Asia/Dhaka" }, "created": "2017-03-16T18:44:10.000+0000", "updated": "2017-03-16T18:44:10.000+0000" }, { "id": "412808", "author": { "name": "rogerio.coelho", "key": "rogerio.coelho", "displayName": "rogerio.coelho", "active": true, "timeZone": "America/Los_Angeles" }, "body": "The latest version of the framework. We have built one for release and other for the simulator", "updateAuthor": { "name": "rogerio.coelho", "key": "rogerio.coelho", "displayName": "rogerio.coelho", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-03-16T19:15:35.000+0000", "updated": "2017-03-16T19:15:35.000+0000" }, { "id": "412809", "author": { "name": "rogerio.coelho", "key": "rogerio.coelho", "displayName": "rogerio.coelho", "active": true, "timeZone": "America/Los_Angeles" }, "body": "@sdarda Hello Sharif AbuDarda. We're still waiting for your feedback on this issue. Currently we are unable to go forward on implement Appcelerator until we have this issue fixed. The latest version is attached, we've built the release and simulator separately, so there is no need for a build script to strip the simulator binares.", "updateAuthor": { "name": "rogerio.coelho", "key": "rogerio.coelho", "displayName": "rogerio.coelho", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-03-16T19:18:18.000+0000", "updated": "2017-03-16T19:19:19.000+0000" }, { "id": "416438", "author": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "body": "[~sdarda], i just tried their framework with TiSDK 6.0.3.GA and Hyperloop 2.0.1 and it works for me after some small changes.\r\n\r\nFirst they need to adjust the runpath search paths via a xcode build flags option in appc.js. Just place it under {{FRAMEWORK_SEARCH_PATHS}}:\r\n{code}\r\nLD_RUNPATH_SEARCH_PATHS: '@executable_path'\r\n{code}\r\n\r\nAfter that they need to change their code slightly so it looks something like this:\r\n{code:javascript}\r\nvar HandsMDM = require('HandsMDM/HandsMDM');\r\nvar sharedManager = HandsMDM.sharedManager();\r\nsharedManager.debugMode = true;\r\nsharedManager.track();\r\n{code}\r\n\r\nI still get an exception from their Framework that the {{publisherId}} key is missing but i guess that's because some initialization is missing from that code example.", "updateAuthor": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-03-31T11:17:32.000+0000", "updated": "2017-03-31T11:17:32.000+0000" }, { "id": "445354", "author": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "body": "Closing ticket due to inactivity. If the issue still persists please reopen.", "updateAuthor": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "created": "2019-01-15T18:21:38.000+0000", "updated": "2019-01-15T18:21:38.000+0000" } ], "maxResults": 10, "total": 10, "startAt": 0 } } }