Currently there is an issue with Apples Application Loader, although the documentation states that you can omit the file extension from the Icon File name, and this works when running locally, when you come to submit it to the app store it fails validation.
At the moment you have to specify the names using the CFBundleIconFiles
Great article that explains how to terminate your app so that it doesn’t go into suspend mode, basic details are here
Multi-tasking can be great, but it has added some complexity to programming on the iPhone. For many apps there really is no advantage. For instance, does the “That’s What She Said” button really need to stay in memory?
It’s some added complexity that programmers don’t need.. some of the more complex memory intensive apps will just exit anyways, and programming the app to suspend can be a highly complicated task.
Fortunately there is a simple way to make your iOS 4 apps terminate for real when the user taps the home button.
This is a simple process:
Open your info.plist file
Add The Key UIApplicationExitsOnSuspend
Set the new key to YES
Now your applicationwillterminate: method will be run when the user taps the home key, and your app will exit for real.
Expected Results:
When the view is popped it should ignore the fact that there was no bottom bar
Actual Results:
get an exec_bad_access
Regression:
Notes:
removing the line that setHidesBottomBarWhenPushed, corrects the issue.
Obviously this is redundant code and I shouldn’t be calling it (I’ve now removed it), but I would of thought he SDK would check before trying to restore a non existent bottombar
To add your own pictures to the simulator, get the simulator running and then drag your image onto the simulator. This will cause the simulator to open it mobile safari. Then mouse down and hold on the image, you will then see the following prompt…
Working out what you do with a payment from Apple, when you are lucky enough to get one, can be quite tricky for a VAT registered company, this is the information I’ve been able to gather so far, via the Apple Developers Forum (so thanks goes to them)…..
Apple act as an undisclosed agent. You supply your products to Apple (one supply line), who then market and supply them to consumers (another supply line). Apple charge VAT on their supply line, as you’d expect.
Apple’s commission is a markup in the price, which they then add VAT to. This is very important. At no point do Apple invoice you for commission. Because of this, under HMRC rules this isn’t deemed to be a supply of “agency services” from Apple to you (the agency services in question being the marketing and sale of Apps on iTunes). That’s the second supply line – Apple to the Consumer. You can then account for VAT on your supply to Apple as normal. Because you are supplying software to Apple’s EU subsidiary, HMRC’s place of supply regulations mean you’re outside the scope for VAT.
So:
You sell an app for £0.99 (it’s an easy number to use in this example, for simplicity)
Apple charges the user £0.84 (plus VAT)
Apple takes their commission (£0.25), except it’s technically a mark-up on price, not commission.
This leaves £0.59, which is the cost of supply. This is what you would invoice Apple for (even if you’re only generating invoices for your own internal paperwork)
As you supplied your product to Apple for £0.59, who then sold it on at a markup to the public, you were supplying directly to a business, and thus outside the scope of VAT.
Fortunately, the contract you have isn’t with Apple UK, but Apple Sàrl, based in Luxumberg. When a seller in one EU member state invoices a company in a different EU member state they can zero rate the VAT. You should still put VAT as an item on your invoices, but rate it at zero (ie, £0.00). As long as you use the addresses below on your invoices, HMRC should be satisfied.
Really Important point: Because your iTunes income is coming from another member state, you need to declare it in Box 8 of your VAT return. If you have an accountant you don’t need to worry about this, you just need to make sure s/he is aware your App income is from within the EU but outside the UK.
Should you need an address and Luxumberg VAT number for your records, it’s as follows:
Billing Address:
iTunes s.à r. l.
8 rue Heinrich Heine
L-1720 Luxembourg
TVA/VAT No.: LU20165772
Invoicing Address:
App Store Invoicing
Apple Operations Europe
iTunes s.à r. l.
Hollyhill Industrial Estate
Hollyhill
Cork Ireland
Here is my initial selection of sessions I’ll be attending, there are still some “TBA” sessions so might change my mind!! Last year they supplied an app to keep a track of the events, I hope they do the same again this year.
Keynote
Developer Tools State of the Union Developer
Safari, Internet & Web State of the Union
Graphics and Media State of the Union
Game Design and Development for iPhone OS, Part 1
Game Design and Development for iPhone OS, Part 2
Adopting Multitasking on iPhone OS, Part 1
Introduction to Game Center
Game Center Techniques, Part 1
Game Center Techniques, Part 2
Apple Design Awards
Stump the Experts
Integrating Ads with iAd Frameworks
Model-View-Controller for iPhone OS
Introducing Blocks and Grand Central Dispatch on iPhone
Making Movies is Hard Fun: Building Tools for Telling Stories
Automating User Interface Testing with Instruments
Simplifying Touch Event Handling with Gesture Recognizers
Advanced Gesture Recognition
Incorporating the Camera and Photo Library in your App
Using Core Location in iPhone OS 4 (Repeat) Frameworks
Core Animation in Practice, Part 1
NASA & Mobility
Implementing Local and Push Notifications
Advanced Performance Optimization on iPhone OS, Part 1
Calendar Integration with Event Kit Frameworks
WWDC Bash at Yerba Buena Gardens
Understanding Crash Reports on iPhone OS
Adopting Multitasking on iPhone OS, Part 2 (Repeat)
Advanced Performance Optimization on iPhone OS, Part 2
Camera to Screen – Building CNN’s Globally Connected Digital Content Flow
The following code snippet is based on the iPhone documentation for handling the pan gesture, although theres still used the translate method which has been replaced. The method also caters for panning all of the views subviews so that everything moves.
Came across this useful blog that shows you can override the description method of an object and when you display object using NSLog it will show the extra info you’ve included!
Here is some simple code that allows you to validate email addresses that have been entered by a user on an iPhone. It does use NSPredicate, which is only available on OS 3.0 and above;