BuySellAds.com

My book Barcodes with iOS 7 is nearing completion. Buy it now to get early access!
Our DNA is written in Objective-C
Jump

Category Archive for ‘Apple’ rss

Waiting for Daily Reports

A developer based in the USA would probably never have to wait for the previous day’s sales report. But the iPhone app selling business being a global operation all EMEA and even more so APAC countries have to wait for a while until they can see how they are doing. That’s why I started to collect data on when a daily sales report usually becomes available so that I might be able to see a pattern or draw any interesting conclusions from that.

You might remember that I added anonymous availability reporting to MyAppSales 1.0.10. This way whenever a new report is encountered I am able to send out a push notification and automatically post it to the MyAppSales Twitter feed. The theory was that Apple would not make daily reports available at different times around the globe, but just have a single database that treats all developers the same. After a couple of days testing this hypothesis it was proven correct. In the beginning I was often myself the first person to see a report and thus trigger the notification. But very soon it started to happen that colleagues started to consistently beat me to the punch, be it either because they where more eager to get the report or just because the number of people with newer versions of MyAppSales exploded as I added more and more compelling features.

Now after 2 months Thomas Bonnin (thanks!) suggested to do an analysis, so I created a CSV file for the daily availability times for the past 2 months and Thomas kindly created these two charts from it. Bear in mind that the detection granularity grew over time, so at the beginning of this report the actual availability times might have been actually a bit lower.

Read more

Forbidden Fruit in Apple's APIs

Apple appears to be cracking down on apps these days which are not sticking to the SDK agreement when it comes to using undocumented (read “private”) APIs. I’m attempting to make a list here, so if you have received the usual slap on the wrist for actually using one of the undocumented “features” to make it easier on yourself then please let me know so that I can add it here.

The problem with these undocumented API calls is that up until now Apple did not seem to uniformly care if they where to be found in submitted apps. But lately the reviewers seem to have gotten a static analyzer into their hands. With the help of which they can dump all the method names in your app so they will see if you are naughty or nice.

The official statement is that Apple is working on making more and more undocumented API public. They claim that those APIs are not properly tested and will probably change between OS versions thus breaking apps that rely on them. We’ll see if some of these following methods will eventually really become public.

Read more

I predict: No Mac Tablet before Summer 2010

In his recent article The Apple Tablet OS & User Experience Mike Rundle speculated on several scenarios regarding which OS and UI to expect from any coming Mac Tablet. It’s an interesting read. Now there are a couple of things that are absent from public discussion which I am trying to shed some light on.

iPhoneOS is actually a branch of MacOS which is basically an open source OS based on BSD plus many Apple-specific additions like the proprietary Window manager. This was said multiple times by Apple employees in passing. Apple is working very actively to reintegrate “learnings” and also iphone custom code they needed to specially create for handling multi-touch back into the MacOS version that’s to come after Snow Leopard. Touch is only one thing, another thing thats still missing from CoreOS is the advanced power saving techniques that make the iPhone work a whole day. An absolutely essential thing if you don’t wont to recharge your tablet every 3 hours.

Then there is the matter of chips. The mobile parts all rely on ARM and even the chip company that was acquired by Apple probably will license ARM cpu designs and build them. Intel seems to just not cut it in terms of battery endurance versus processing power. Intel begs to differ, but Apple seems to have set it’s sights on using ARM as the main platform for all their mobile devices. The current MacOS can only be built for Intel, support for PowerPC has been discontinued for 10.6.

I think what’s happening right now inside Apple is this: They are trying to achieve what Microsoft has abandoned eons ago: a unified CoreOS which can be built for a variety of cpus. One possible reason besides the platform’s age might be to free up manpower to work on ARM being the second possible build platform for CoreOS. Apple might also drive a dual strategy and choose whatever chip platform has the most endurance for the needed performance at the time of manufacture. With a unified OS they could switch CPUs at a whim and thus can get better prices for their CPUs.

This will be also the platform to power the iPad. Apple will not compromise on the technology just to make it compatible with current generation binaries. Though most likely in a future version of XCode you will just have to change the build platform so that you can rebuild your iphone app for the ipad. And in some circumstances you’ll have to rearrange the UI elements and resize static images where used. So I guess a month in lead time should be sufficient for most app developers to get a couple of their apps rebuilt.

It will still be Objective-C though…

The most important question is which strategy would make Apple more money: an open OS for which anyone can write and sell apps. Or the iphone strategy where they make 30% on each sale. Clearly the latter has proven to be an enormous boon for Apple. So why should they change it? It is very likely that iTunes for Macs will get a Mac app store at the same time that a iPad section opens on it because both will you will be able to purchase CoreOS apps (Apple hopes also to sell much more games this way) via iTunes.

Actually I don’t think we will see the iPad shipping at the beginning of 2010 as some sites predict. It might be technically “done” already, but the OS is still missing. If Apple continues their recent pattern then we can expect Mac OS X v10.7 “COREpard” in Summer 2010. That will be the time when we will see the iPhone 4G being released as well as the iPad.

In any case we developers can look forward with anticipation of added profits from additional platforms and being able to sell almost identical content several times: for iPhone, iPod, iPad and Mac.

Developing iPhone Apps on Snow Leopard

I was quite looking forward to getting a chance to improve my already quite satisfying Mac experience to the latest iteration of the operating system. Having bought my new MacBook Pro after Juni, I was elegible for an extra cheap upgrade. So I filled in my serial number and got promised a delivery about a week afterwards. But not being the patient type I figured it would not be a sin to borrow a friend’s DVD and install the new cat. Hey, I own a license, who cares which media I’m using?

Installation was as painless as can be. You pop in the DVD while your Mac is running, click a couple of times and then you wait. After 20% there is a first reboot, then you wait, all together roughly 40 minutes. At first you don’t see any new stuff, except the same welcome Animation playing in a Window instead of full screen. But then you start to see little things. Many little things, in fact enough to warrant a 23-page in- depth technical review on Ars Technica which is great bedside reading making you dream nicely about your invigorated Mac.

I was excited to install the new Xcode 3.2 from the “Optional Installs” folder on the DVD, then I downloaded and installed the latest iPhone 3.1 SDK for Snow Leopard which in contrast to Leopard is just the SDKs and now Xcode. The Leopard version contains Xcode 3.1.4, which for strange reasons does kind of run, but is “not officially supported by Apple to run on Snow Leopard”. Still, I will show you how you CAN compile against a 2.x SDK. After that I will show you Apple really wants you to do, but leaves it up to SDK diggers to tell the public.

Read more

Visit WWDC '09 … Retroactively!

Most of the world sees the annual WWDC as one of several fixed occasions where new and exciting stuff is announced or released. But the meat of this Worldwide Developer’s Conference (as the name suggests) is about training.

Being able to attend the WWDC is the dream of many new iPhone developers, as the numbers have shown. 60% of the total 5200 attendees to this years WWDC have never been to the conference before. But attending is expensive. Besides of travel and hotel expenses the ticket alone costs in the vicinity of $2000. Who can really afford to spend a month’s salary on this conference sacrificing a week of vacation time in tandem?

When I got Apple’s notification two days ago that the session videos are now available for sale my heart jumped and my brain got fuzzy thinking whether I should take the plunge and spend $299 for just the iPhone stream or $499 for both iPhone and Mac.  So finally after checking my savings and finding several excuses for spending the money like “It’s training and that’s priceless” I spend 429 Euros on the complete package.

Read more

Which OS Version to Target?

Now that OS 3.0 has been released and we know that the 3.1 bugfix release is on rails we have to re-evaluate the question which platforms we need to be able to support. On the one hand it might be nice to use all the new 3.0 bells and whistles. One the other hand though this could mean we risk losing half of our potential customers who are still on “old software”.

Besides simple disinterest or negligence the main reason for sticking with old software is that people are always waiting to hear from the iPhone Dev Team that a new version can be jailbroken and sim-unlocked. If you are using your iPhone in the network of your own choosing, you would not want to give this up even for the greatest new update.

From the developer’s point of view there are a couple of features (even before version 3.0) where you had to bump up the minimum OS version. I for one implemented the CLLocation properties course and speed in iFR Cockpit which only became available as of 2.2.

Just today Applyzer released an analysis of the required OS version for all apps on the store. Also AdMob frequently publishes metrics on OS versions in use. Let’s check those to get some guidance for our own apps.

Read more

Help Us get an iTunes Connect API!

Apple to create API … if enough people want it!

Ever since my app MyAppSales got rejected I have been lobbying for an official and secure API which would permit us developers or creators of tools like AppViz to interface with iTunes Connect. The current situation, as you are probably well aware, is a real pain in the backside.

According to Apple this is the “expected mechanism for retrieving that data”. So they really expect developers to go to the report site every day and download daily reports manually. Apple makes great software and devices, but I keep asking myself how they can be so far away from the truth of the facts of real developer life?
Read more

All That Can Go Wrong … All The Rejection Reasons

This is an overview of reasons why Apple has rejected apps temporarily or permanently. Not some theoretic reasons that might be construed from the SDK Agreement, but real instances of passed judgement. For each rejection reason the original paragraph written by Apple is included. I made it as non-judgemental as possible.

Originally this article was written for the Cocoapedia but I am publisizing it here for added exposure because I am hoping for comments informing me of missing reasons. For a reason to be included it must be documented on your blog or website and the link given. There is a website AppRejected.com that seems to be dedicating to collecting such rejection reasons, but there is no way to contact the owner and the list seems to be lacking specific citing of sources and order.

This list may serve as a checklist to help guide the general design principles such that fellow developers can avoid the temporary pitfalls which might delay their apps for two weeks. Also you might check your “killer app ideas” against this list to save you from wasting precious time on ideas that according to this list would in all likelyhood never be permitted into the store.

Read more

A signing identity matching this profile could not be found in your keychain

NOTE: You might want to check out my guide to fix code signing problems.

I am getting tons of reports of developers who had to renew their expired certificates and who now find their new profiles unusable. Also affected a developers who had to add new devices to their ad-hoc profile.

Even though everything is done by the book, they are  get a “A signing identity matching this profile could not be found in your keychain”.

Yellow Bar

I experienced certificate expiration first hand, but that was some time before WWDC and so I had no problem creating new certificates and provisioning profiles. But last week, right after WWDC, Apple amended the online process to accommodate new provisioning profiles for push-enabled apps. You have to create a new app id and thus provisioning profile for each and every push-enabled app you want to distribute.

It currently seems as if this change to the process causes non-push-enabled profiles to be faulty in a way that even though the poor developers do everything right they still wind up with the above error message and no way to fix it. Not even my handy guide on how to fix code signing errors helps. I know because I went through it together with several affected developers.

Read more

WWDC 09

I’ve been watching the WWDC Keynote presentation together with a couple of friends and one other iPhone developer and here’s the general consenus: We are disappointed. But are we righteously so?

Most of the otherwise exciting news was leaked to the public in the weeks preceding the event which unfortunately caused expectations to be way too high. Apple can do magic, but some things just take time. Like a fully recovered Steve Jobs or even a 10″ Mac Tablet we have been lusting for.

These where the biggest surprises that where met with a certain degree of enthusiasm:

MacBook Line Refresh

  • All Unibody MacBooks are now called “Pro”, dropped in price and get better CPUs
  • SD-Card Slot is now standard
  • The return of the Firewire port
  • The new “7 hour battery” technology not found in all Macs

Safari 4

I’ve been using Safari 4 for a while now but I had a problem where I would not be able to insert links into articles on my WordPress dashboard. But since I updated to the release version of Safari 4 I am happy to report that this problem is gone.

Safari is the fastest and most standard-compliant browser currently available. There is a strict benchmark called the Acid 3 which gives Safari 4 a whopping 100 out of 100 points. Safari 3 scored 76 and the new Internet Explorer 8 even less.

Also the performance of Safari when it comes to rendering and JavaScript is way ahead of the competition. Ah, and btw there are 150 new features. I especially like the new coverflow search of your browsing history. A great method to quickly find a page you recently looked at by typing a few words.

Snow Leopard

The name similarity might be meant as a hint as to the similar 64-bit underpinnings of OSX between the current version Leopard and the soon to be released Snow Leopard. The general theme is to squeeze every additional drop of performance out of the hardware. In Leopard the built-in apps still where 32-bit, but now they are recompiled with 64-bit causing a slightly better performance.

So there is special support with a new technology built into the core named “Grand Central Dispatch” which cares to more efficiently distribute loads between multiple cores. And with OpenCL it is possible for the first time to also use the graphic processing unit (GPU) to offload specific processing tasks.

Quicktime X is the newest version of Quicktime, the video playing and recording infrastructure in OSX. Again, the focus is on additional performance. Many people got annoyed that they needed to pay extra for Quicktime Pro, but this is now a thing of the past.

What I list most, personally, is that now Exchange-compatibility is complete. In Leopard you need Entourage to access your Exchange calendar and contacts. With Snow Leopard no longer. This is great news for people like me who has the family on Exchange as well as people would take their Mac to work because now they can work as an equal without having to install Microsoft Office.

There are also a couple of additional new things related to Exposé and Stacks.

But the greatest thing is Apple’s impeccable timing and pricing. Existing Leopard users get the update for just $29 in September, one month before Windows 7 is being released. The family license will cost an enormous $49.

iPhone 3GS

A great video tour on the iPhone is available on the Apple website.

  • Faster
  • Better Battery
  • Better 3 Megapixel Camera with Auto-Focus, or tap-to-focus for close-ups
  • Video Recording, Editing, Sending (MMS, E-Mail or direct to YouTube)
  • Voice Control (Press-and-hold Home) for dialling or controlling music playback with voice synthesis feedback
  • Magnetic Compass, Google Map now orients in correct direction you are facing
  • Digital Compass

OS3-specific (i.e. for all iPhones)

  • Copy&Paste
  • Voice Memos
  • MMS (finally, but who needs it?)

Summary

So in summary we CAN be happy with Apple, we’ll got a free new Safari and will get the new iPhone OS in the next two weeks. It’s again a good time to buy a new Mac right now because for $29 it does not pay to wait to get Snow Leopard with a new machine. And the new iPhone 3GS is just compelling enough to nudge speed and feature freaks to shell out.

On the minus side there are a couple of things that still take some time. I am phrasing it like that because we still want to see: Steve Jobs’ return, a Mac Tablet or Mac Netbook and maybe something really mindblowing.

Right now Apple does what every smart dealer of drugs for the technophile is doing: Give a little more every time there is a Keynote presentation. Up the dosage without overloading the audience. And on this strategy they have delivered once again.