Have a look at this excellent presentation, it shows the approaches and difficulties facebook have had while structuring the facebook app.
What is interesting is how facebook made all of their major screens as separate libraries, these libraries invoke custom schema calls which then opens those screens. Quite an interesting view and approach to a large scale development application. By separating each major functionality into a library, you can then focus on the core functionality and not have any form of conflict.
I have been working with many mobile services, from push notifications to in app purchases.What Helios provides is one single location for all of these services.
I thoroughly recommend trying it, I found the instructions are fairly simple and easy to deploy, In addition, there is further support for Cargo Bay, which provides one step receipt verification(a must have for any in app purchases). There is tonnes of features, from push notifications to core data synchronization, you can even produce web services from the core data models.
If you are getting the clang error that Xcode 5.1 produces
linking shared-object nokogiri/nokogiri.bundle
clang: error: unknown argument: ‘-multiply_definedsuppress’ [-Wunused-command-line-argument-hard-error-in-future]
clang: note: this will be a hard error (cannot be downgraded to a warning) in the future
make: *** [nokogiri.bundle] Error 1
then use this command
sudo ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future gem install helios
This should get passed warnings treated as errors.
Once installed, when you try
And you get An error occurred while installing pg (0.17.1), and Bundler cannot continue. Install the postgresql app, you can get it from here.
Understanding the iOS view controller life cycle is important, I found this diagram which clearly describes what methods are invoked at what state.
I am pleased to announce that one of the projects I have been working on, RadioTimes iPad app has now been successfully launched and is now in the App Store. Please download and try it now.
Here is a small presentation describing the calabash structure.
October 18, 2013
Android, Automation, Calabash, Cucumber, Gherkin, iOS, iPhone, Mobile, Ruby, UI, Xamarin
I have recently been looking at UI Automation tools for some of the projects I have been working on, so i created a list plausible tools.
At first I decided to use Appium but I found that the support for ios 7 wasnt very good and also there is alot of bugs on the github repo. I even found a few bugs that were closed even when they were not fixed. So in the end I decided to try Calabash, recently they have been taken over by Xamarin and so I know that the support will be far better. After using the tool and really putting some hard test cases in, i can say that Calabash is the best tool for my projects.
Here is a power point presentation that I created that explains in detail the analysis.QA UI Automation Tools
So I watched the wwdc 2013 conference and what I gathered(for ios 7) from it was flat designs and thin fonts BUT then when i watched the session videos, I was quite impressed with some of the features. The items i found to stand out was:
- Advanced Text Layouts and effects with textkit
- Core Image Effects and techniques – this is the blur effects
- Core data performance
- custom transitions
- Sprite kit!
I think i’m more excited with sprite kit as there is some awesome features offered with xcode 5, including an inbuilt physics engine and image atlas’ing.
So, as most iOS developers know, it a pain in the ass having to get all the images and their dimensions. I am currently using quite a handy tool called Resizer. The app will resize a 2x image to a standard image size, so then you only have to deal with the 2x images, you will be surprised with how much time this has saved me.
Sometimes when submitting an app to the app store, you struggle to get some good images. I came across this website, its pretty cool, you can upload a picture of your app and then it will appear on a premade photo but on the iDevice of your choice. Check it out.
In a recent project I have been working on, I have been using Xamarin, before the band wagon comes with the angry mob first listen and see what it has to offer before disregarding it.