WXLive show notes for June 1 2012

The webinar guest was Rob Berry talking about WM17 - iOS Development - Part 1.

Rob will introduce us to the world of iOS development using WinDev Mobile. He will walk us through step by step through the entire process to give us a good feel for what it takes to do your iOS project.

1 - Apple Developer signup (GET YOUR DEVELOPER ACCOUNT)
2 - WinDev Mobile 17 app design 
3 - Adding native Obj - C code 
4 - Testing in WM17

This webinar started an hour earlier than the usual time and I jumped in around halfway through, so I was a bit lost. I asked a few questions in the Skype chat, and learned that:

  • While in Windows you can develop and run your iPhone app in WinDev Mobile, using the emulator
  • If you want to add custom Objective C code, WM cannot compile that code so you need to wrap it in a condition so it doesn't run in the emulator
  • To deploy your app to test device or to the app store you must compile the code on an actual Mac. This means copying the code over (Rob was running Parallels on his Mac, so did this via a shared folder) and then copying the project in Xcode, the Apple development IDE

This is the point where I joined the webinar; Rob was talking about push notifications, and how every Apple phone has a unique ID. When someone requests push notifications you store that ID and then you push notifications out via Apple's servers. This was all objective-C code. 

Your app can be in distribution mode or development mode. If you're testing push notifications you want (need?) to be in development mode and send your pushes to a special provided sandbox. 

Back in WinDev he showed how to take a picture with the app by creating a clickable image (PNGs work best) and adding the following code:

Rob showed how to implement ads in your app. When you're in the test mode you're gong to get some errors because the ads aren't live. 

When you buy a Mac, you get all the drivers for that machine for Windows. Which is one reason why people say Windows runs better on a Mac - the drivers are all written specifically for that machine, not for an unknown combination of different devices. 

Rob found HyperFileSQL to be very slow, and he isn't sure why, but at least one other dev has ad the same problem. It may be startup time for the server, and HyperFileSQL may also be the reason for the large (145 meg) app size. You can use SQLite and that may make things better. 

Push notifications raise privacy issues, since the app has access to all kinds of information stored in the phone. 

Remember, you need to spend $99 (per year) for your developer license. You need to have a business to get a developer license. You can't just be an individual. There is a student license but you can't sell anything with it. 

Rob said the first time he got a license it took about three weeks. His second license (another company) took a couple of days. 

Remember that this is the first release of WM supporting iOS. 

Why use WM if you know Objective C? 

WM lets you do a very quick proof of concept. And you can do your full development in WM if you want. For the tightest code and the most powerful app you can rewrite entirely in Objective C. 

For greenfield development the case for WM on the iPhone isn't as strong. But if you have existing WinDev apps you can pull in your analysis and get the database functionality in there in a hurry, and if you have existing business logic you can probably reuse a lot of that code. The case for WM is a lot stronger if you need to develop for a variety of platforms including iOS.

Rob also spent some time going through some Xcode features such as the storyboard. 

MyCodeTeacher.com is a great resource for learning ObjectiveC, and Lynda.com also has training available.