Search code examples
iosappceleratorappcelerator-titanium

iOS development IPA cannot find module for architecture arm64


I'm on the alpa testing stage of the application that I'm building. It's pure js, no alloy.

Everything runs fine when ran from the studio and I've used the IPA build by it to send it out to 2 other testers (iPhone 5c and 6 Plus). The 5c runs fine, however the 6 Plus keeps reporting that it get's the following error:

Couldn't find module: ui/common/MasterView for architecture: x86_64

That was kind of odd, given that the simulators and my physical devices (4S with 9.1 and 6 with 8.3) worked fined.

I was finally able to reproduce the issue by building for the simulator from the CLI with the following command. I also ran with debug level and saw the line below.

appc ti build --platform ios --sdk 5.1.1.GA --target simulator -V "MyDeveloperCertificate" -P DevelopmentiOSProvisioningProfile

[DEBUG] Loading: /Users/lmtzusr/Library/Developer/CoreSimulator/Devices/C5FDC6E8-16B3-400A-BE02-7395B73C5060/data/Containers/Bundle/Application/E20F949C-712E-4DCC-A6F1-77537C3CC85C/MyNew.app/ui/common/MasterView.js, Resource: ui/common/MasterView_js 

Here is the output of the build command and also the output of info

Appcelerator Command-Line Interface, version 5.1.0
Copyright (c) 2014-2016, Appcelerator, Inc.  All Rights Reserved.

2/6/2016, 10:18:14 PM

Operating System
  Name                        = Mac OS X
  Version                     = 10.10.5
  Architecture                = 64bit
  # CPUs                      = 8
  Memory                      = 34359738368

Node.js
  Node.js Version             = 4.2.2
  npm Version                 = 2.14.7

Titanium CLI
  CLI Version                 = 5.0.5

Titanium SDK
  SDK Version                 = 5.1.1.GA
  SDK Path                    = /Users/lmtzusr/Library/Application Support/Titanium/mobilesdk/osx/5.1.1.GA
  Target Platform             = iphone

Command
  /usr/local/bin/node /Users/lmtzusr/.appcelerator/install/5.1.0/package/node_modules/appc-cli-titanium/node_modules/titanium/bin/titanium build --platform ios --sdk 5.1.1.GA --target simulator -V MyDeveloperCertificate -P DevelopmentiOSProvisioningProfile --config-file /var/folders/1m/t5q8800n5hd4336871js49nm0000gn/T/build-1454793489011.json --log-level info --no-banner

[INFO]  Found Titanium module id=dk.napp.drawer version=1.2.4 platform=iphone deploy-type=development path=/Users/lmtzusr/Projects/TitaniumWorkspace/classic_test_1/modules/iphone/dk.napp.drawer/1.2.4
[INFO]  Found Titanium module id=analytics.google version=3.1.0 platform=iphone deploy-type=development path=/Users/lmtzusr/Projects/TitaniumWorkspace/classic_test_1/modules/iphone/analytics.google/3.1.0
[INFO]  Deploy type: development
[INFO]  Building for target: simulator
[INFO]  Building using iOS SDK: 9.2
[INFO]  Building for iOS Simulator: iPhone 6s Plus
[INFO]  Building for device family: iphone
[INFO]  Minimum iOS version: 7.1
[INFO]  Debugging disabled
[INFO]  Profiler disabled
[INFO]  Set to copy files instead of symlinking
[INFO]  Forcing rebuild: target changed since last build
[INFO]    Was: device
[INFO]    Now: simulator
[INFO]  Initializing the build directory
[INFO]  Creating Xcode project
[INFO]  Creating Entitlements.plist
[INFO]  Creating Info.plist
[INFO]  Disabling ATS
[INFO]  Creating main.m
[INFO]  Creating Xcode config files
[INFO]  Copying Titanium libraries
[INFO]  Copying Titanium iOS files
[INFO]  Creating debugger and profiler plists
[INFO]  Analyzing Resources directory
[INFO]  Analyzing platform files
[INFO]  Analyzing module files
[INFO]  Analyzing localized launch images
[INFO]  Analyzing CommonJS modules
[INFO]  Creating asset catalog
[INFO]  Creating app icon set
[WARN]  The default icon "DefaultIcon.png" contains an alpha channel and will be flattened against a white background
[WARN]  You may create an image named "DefaultIcon-ios.png" that does not have an alpha channel in the root of your project
[WARN]  It is highly recommended that the DefaultIcon.png be 1024x1024
[INFO]  Missing 6 app icons, generating missing icons
[INFO]    Resources/iphone/[email protected] - Used for iPhone, iPad - size: 58x58
[INFO]    Resources/iphone/[email protected] - Used for iPhone - size: 87x87
[INFO]    Resources/iphone/[email protected] - Used for iPhone, iPad - size: 80x80
[INFO]    Resources/iphone/[email protected] - Used for iPhone - size: 120x120
[INFO]    Resources/iphone/[email protected] - Used for iPhone - size: 120x120
[INFO]    Resources/iphone/[email protected] - Used for iPhone - size: 180x180
[INFO]  Creating launch image set
[INFO]  App thinning disabled, skipping asset image sets
[INFO]  Processing JavaScript files
[INFO]  Writing app properties
[INFO]  Writing i18n files
[INFO]  Processing Titanium symbols
[INFO]  Removing files
[INFO]  Invoking xcodebuild
[INFO]  Finished building the application in 54s 294ms
[INFO]  Launching iOS Simulator
-- Start simulator log -------------------------------------------------------
[ERROR] Script Error Couldn't find module: ui/common/MasterView for architecture: x86_64



appc ti info -t ios
Appcelerator Command-Line Interface, version 5.1.0
Copyright (c) 2014-2016, Appcelerator, Inc.  All Rights Reserved.

Xcode
  7.2 (build 7C68) - Xcode default
    Install Location          = /Applications/Xcode.app/Contents/Developer
    iOS SDKs                  = 9.2
    iOS Simulators            = 9.2
    Watch SDKs                = 2.1
    Watch Simulators          = 2.1
    Supported by TiSDK 5.1.2.GA = yes
    EULA Accepted             = yes
    Teams                     = redacted MyDeveloperCertificate - Individual (active)
                              = redacted MyOrgaCert - Company/Organization (active)

iOS Keychains
  login.keychain              = /Users/lmtzusr/Library/Keychains/login.keychain
  System.keychain             = /Library/Keychains/System.keychain

iOS Development Certificates
/Users/lmtzusr/Library/Keychains/login.keychain
  MyDeveloperCertificate (redacted)
    Not valid before          = 5/18/2015 12:14 PM
    Not valid after           = 5/17/2016 12:14 PM
  MyOrgaCert (redacted)
    Not valid before          = 1/17/2016 2:28 PM
    Not valid after           = 1/16/2017 2:28 PM

iOS Distribution Certificates
  None

Apple WWDR Certificate
  Apple WWDR                  = installed

Development iOS Provisioning Profiles
  MainDev
    UUID                      = redacted
    App Prefix                = redacted
    App Id                    = com.domain.app
    Date Created              = 1/30/2016 9:16 PM
    Date Expired              = 1/29/2017 9:16 PM

Distribution iOS Provisioning Profiles
  None

Ad Hoc iOS Provisioning Profiles
  AdHocMain
    UUID                      = redacted
    App Prefix                = redacted
    App Id                    = com.domain.app
    Date Created              = 1/31/2016 6:11 PM
    Date Expired              = 5/1/2016 4:51 PM

iOS Simulators
9.2
  iPad 2 (ipad)
    UDID                      = D1AFF6C7-CB58-482B-B59D-FCAEB34F8924
    Supports Watch Apps       = no
  ..
  ..
  iPhone 6s Plus (iphone)
    UDID                      = C5FDC6E8-16B3-400A-BE02-7395B73C5060
    Supports Watch Apps       = yes

Connected iOS Devices
  None

iOS Issues
  !  Unable to find any valid iOS distribution provisioning profiles.
     This will prevent you from packaging apps for AppStore distribution.
     You will need to login into http://appcelerator.com/ios-dist-certs with your Apple Download
     account, then create, download, and install a profile.

  !  Unable to find any valid iOS production distribution certificates.
     This will prevent you from packaging apps for distribution.
     You will need to login into http://appcelerator.com/ios-dist-certs with your Apple Download
 account, then create, download, and install a certificate.

Solution

  • The "flow" is so: app.js -> ui/handheld/ios/ApplicationWindow.js -> my stuff

    If I move my ApplicationWindow.js into the expected location and change the name it works fine. Is there an undocumented feature that requires to have files named in specific ways (besides app.js). Hopefully is just something odd and doesn't make a difference if I change my application in the way that it works (renaming the file and moving it).