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
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;
If you are using a switch case similar to the one below:
switch (row) {
case 0:
int i;
i = row + 10;
NSLog(@"%d",i);
break;
default:
break;
}
You’ll get a compile error, “Expected expression before ‘int’”. If you need to declare a variable enclose the code in curly braces and the error goes away….
switch (row) {
case 0:
{
int i;
i = row + 10;
NSLog(@"%d",i);
break;
}
default:
break;
}
Note that the error only occurs if the variable declaration is the first statement in the code block.
Used OmniGraffle to produce mockups for my latest iPhone project, its pretty easy yo use and there are a number of good stencils that allow for most of the UI Kit controls and even the iPad!