El Loco Blog
How Does El Loco Display My App?
By Kee Nethery — July 21, 2015
The El Loco web site never sees or stores your app source code.
The El Loco app (Mac) used on your development machine extracts two things from your source code:
- the strings that need translation, and
- the definition of the screens that display those strings.
The El Loco app then uploads those strings and screen definitions to the El Loco web site which converts them into HTML for display to your translators.
The El Loco web site contains less information about your app than what is on an iPhone inside the purchased version.
The El Loco system has three main parts:
- the El Loco app that you run on your development Mac with Xcode,
- the El Loco iOS Library is added to your iOS code to enable El Loco to capture the screen definitions of your app while you are using it in the Simulator, and
- the El Loco web site is where translators work their magic while viewing an HTML interpretation of what your app looks like.
The El Loco App
The El Loco app only runs on your development Mac. It communicates to several sites:
- com to validate the XML definition for plists it encounters.
- xamarin.com for error and crash reporting.
- com to validate your account details and to check for updates.
The only real app related data the El Loco app sends is XLIFF files to the El Loco web site in order to generate the HTML representation of your app screens. No source code, XIBs, or Storyboards go to the El Loco web site.
Once translation is complete, the El Loco app takes the XLIFF data from the web site, converts it appropriately, and stores it into your app so that your app supports your chosen languages.
El Loco iOS Library
The El Loco iOS Library installed into your iPhone app extracts the screens as they display in the Simulator. The iOS library only extracts screens as they draw in the Simulator – never in the released version of your app. When a screen draw is complete, the library takes the elements displayed and transfers the screen definition to the El Loco app which stores the definition locally in the cache area.
Frequently, the library will reduce your app image files into smaller compressed representations to minimize the data transfer because translators don’t need high resolution images that customers would expect. The El Loco app catches the data from the Simulator, processes it into XLIFF files, and when you tell it to, uploads them to the El Loco web site.
El Loco Web Site
The El Loco web site contains the screen definitions and strings from your app keyed to your login email and password. It manages translator access to the various languages. Instead of string files and screen shots that you would normally take manually, the web site displays your app to the translator with editable fields for each string. Being able to edit the strings in the screens makes it much easier for translators to provide correct suitable translations the first time. It eliminates the multiple round trips between developer and translator so common when translators cannot immediately see that a translation is one or more pixels too long for the allocated space. Once you approve a translation in the web site, you use the El Loco app to pull the translation data into your app. It is all under your control.
Even if someone was able to hack the El Loco servers and steal your app data, all they would see are the strings and screens that you have indicated need translation. Presumably, it is the newest version of the same data they would see if they were using your finished app on their iPhone or iPad.