Your browser (Internet Explorer 6) is out of date. It has known security flaws and may not display all features of this and other websites. Learn how to update your browser.
X

Posts tagged ‘Apple’

Post

Promotional Codes are in, Still no Demos

According to MacRumors, developers can now issue 50 promotional codes for their iPhone applications. So as a developer, you can give out 50 codes for people to download your app for free. This means that people like those at Veiled Games don’t have to send review sites money anymore to cover the cost of purchasing their games.

This is great news for those who want to promote their apps to review sites and journalists. But it doesn’t solve the problem of demos. Many developers want to have demo versions of their apps with unlock codes that’ll allow people to use all the functionality of the app. This is not possible today. Instead, developers have to issue two versions of their apps to the AppStore.

Either way, this doesn’t affect me yet. I’m doing custom iPhone work for others who have to worry about publishing to the store. And my first app is going to be free, whenever that is!

Post

Got my App on my iPhone!

Exciting days! This weekend I finally got my app running on my iPhone. It took a while to get accepted to the developer program (due to a lost email) and then I had problems getting my app working on my iPhone that were solved by upgrading to the latest SDK.

But now I have my app working on my iPhone and it’s sweet! It’s so cool to see something that you’ve only seen working in the emulator working, and working well, on the iPhone.

Well, except for one thing. It’s slow. Slow as in I don’t wanna use it slow. Now, it’s the debug build, so I’m hoping that the release build is quicker. I haven’t tested it yet due to various reasons, but I’ll be able to do so once the XML data service I rely on is back up and running. I’m crossing my fingers. Either way, I still think I need to add a spinner when the app first launches, to show that I’m working on getting the data. I also need to handle the absence of the data service better, instead of just crashing! :)

Edit: When the service I rely on stops working, my app just quits. (I still have to fix that.) I noticed that with the release build, it quits much faster! That’s a good sign, I hope. :)

Post

TouchXML for the Win!

Last night I implemented saving and loading of the friends list. So now my app is actually useful! I used XML as the file format, because it’s so easy to use and read. Writing the file was easy enough, I just built up an NSString and wrote it out. Reading the file, though, was a different matter. I had previously used the XML reader as in the SeismicXML example, but frankly I didn’t like that method. It was a big pain in the butt. What I wanted was something like NSXMLDocument, which isn’t available on the iPhone. Luckily some wonderful dude created a look-alike library in the form of TouchXML. And some other wonder dude wrote up a RSS tutorial using TouchXML. So after all that, actually reading my XML file became a much easier thing.

Next step? I have lots of little things to do, even now that the basic functionality of my app is working. But I think that maybe now I should actually try to put it onto my iPhone and make sure it works there, and not just in the simulator.

Post

Absorbed Into the Collective

I phoned Apple the other day to ask about the status of my application to the iPhone developer program and was told that I’d been accepted way back on August 12th!

So of course I asked her resend the acceptance email which they nicely did. All in all they were very hepful and friendly.

So I buy my way into the program by paying my $99, and they send me an activation email. I have to click on a provided link to activate, but when I do so it doesn’t work and I’m told to try again later. Doh! I’ve tried several times without success.

I have a feeling that Apple will be getting another phonecall from me soon.

Post

WPTouch and Invisibility

I had to disable the WPTouch plugin that shows an iPhone-friendly view of this website. For some reason I’m unaware of, it just stopped working. When I viewed this site on my iPhone, it gave an error. So rather than get an error, it’s better to get the original design of this blog. I’ll have to find an alternate theme.

Last night I went to see Star Wars: The Clone Wars. It’s not as bad as everyone says. You just have to remember that it’s a TV cartoon series expanded to fill the big screen.

Afterwards I got a little chance to work on my app some more. I got it working so that clicking on a person in the list would bring up another view. But for some reason, the screen was blank. All my controls were invisible! I tried a different view than the one I wanted, and it worked. So I’ll have to figure that out.

Post

Nav Only

Last night I implemented the idea from my previous post. I wasn’t sure quite how to go about it, so created an nav bar app from scratch using a template, and just copied what I saw there into my own app. It went without a hitch, and now I have a nav bar only app!

I also implemented avatars. Now you can see a little avatar next to each entry in the friend list, and it makes a world of difference to see those little icons there. I love it!

I also added the WPTouch theme to this site, so if you view this site using an iPhone you’ll see a very iPhone-friendly version. If you want, you can go back to the regular theme using a link at the bottom.

Finally, I also put my project into a Subversion database. I discovered that my hosting provider has Subversion support, so I added a Subversion database to my domain. Installing it was easy. Using it gave me a small problem. Subversion always confuses me when it comes to creating a new sandbox. But I have it up and running now, and it’s a big relief to have my project in a remote version control system

Ooop! One more thing. I also made chewyapps.com point to ch3wy.com. I’m still undecided as to which should be my “main” URL.

Next up? Add some more navigation abilities to get the the view I want in the correct way.

Post

iPhone Conformity

I rethought my interface yesterday. It occured to me that I wasn’t really managing the people in my table view much like other apps I’d seen. My app will be for one of those social networks out there. You’ll be able to see people in the main view of the app in a table view. I was planning to have an additional tab in the tab bar for adding people, and another tab in the tab bar for sorting options.

Yesterday I realized that this is too clunky. It will be better to get rid of the tab bar completely, add a “+” symbol to the nav bar so that I can add people (just like the Contacts app) and add a Sort button on the left side of the nav bar. That way, I don’t need a tab bar at all, streamlining the interface and making it easier to use.

Most programmers wage an inner battle when developing software. On one side, you have the best user experience possible. This is what you want to create. On the other side, you have the coolest technology possible. This is what you want to use. You want to create an excellent user experience by doing really cool stuff, using all sorts of neat technologies. But the problem is that often we use those cool techno widgets just because we can, and not because it’s best for the app.

That was the case here. This is my first iPhone app. I thought it would be cool to use both a nav bar and a tab bar. I actually thought at the time that it would be the best interface too. But I made the mistake of not thinking through my interface thoroughly enough. Upon further reflection I realized I was throwing too much stuff in there. So tonight my plan is to trim trim trim!

Post

Lots of Fun to Do

I have lots of work to do on my first app! I have a table view and I need to sort all the items in there. I need to make sure that when an item is selected, none of the blue hi-light colour shows up. Need to save the list, need to be able to add to the list, need to view an item’s details. Oh boy, lots to do.

But you know what? Developing apps for the iPhone is fun. There are several reasons for this. One, it’s new. I’ve never done this before and I like doing new things. Two, the apps are small. I don’t like working on one monolithic application for years on end. So I appreciate the fact that even now, at the beginning of my project, I can see the light at the end of the tunnel. And three, it’s for the iPhone! How fun is that?

Post

Tab and Nav Bars

I recently worked on how to arrange navigation and tab bars, and figured out some things. I’m trying to create an app where the first page is a table view controlled by a nav bar. A table view is just a list. It can be grouped (like in Settings) or not (like in Contacts). A nav bar is what you see in the Contacts app near the top. It has the + symbol in it. When you view a contact’s details, it shows a button that lets you get back to the contact list. In my app, once the user selects an item in the table view, I want to go to a more detailed view, and another view thereafter. Those will all be controlled by the nav bar.

On top of that there’s the tab bar. You can see tab bars in action at the bottom of the Phone and iPod apps. It lets you tab between views. I plan to use it to add additional functionality not controlled by the nav bar.

It wasn’t nearly as obvious as I thought it’d be. I thought I could do all this through the Interface Builder. That may be possible, but I didn’t find it. So I cut up all the pages and put them each in their own XIB. I then connected the views programmatically and got my table view working inside the nav bar, both inside the tab bar. Whew!

Now I gotta figure out the ordering of stuff in the nav bar. I somehow thought that the order I added things in would result in having my table view first. Instead the details view shows up first and I have to go back to the table view. Weirdness. Ah well, no rest for the weary!

I spent all this evening watching the season finale of Terminator Chronicles, which I missed when it originally aired. And registering for this domain. And creating this blog. And creating this blog entry. So this status update reflects work done yesterday. :)