|
If I implement application-didFinishLaunchingWithOptions:, will application-didFinishLaunching ever get called? I'm testing the ability for my app to resume its state, and if it quits in the background it just launches -didFinishLaunchingWithOptions: when it opens up again. Edit: nevermind, just looked it up in the documentation and I don't need to implement it. lord funk fucked around with this message at 23:19 on Sep 3, 2011 |
# ? Sep 3, 2011 23:08 |
|
|
# ? May 15, 2024 18:06 |
|
Toady posted:In -showPreferencePanel:, you forgot It fixes my application! Thanks! Embarrassingly I went back to the book and that line is in there, I guess I just missed it and that's what I get for trying to work on this stuff late at night.
|
# ? Sep 4, 2011 06:29 |
|
Is there a good place that catalogues SDK issues with jail broken phones? As it doesn't seem to be something Apple likes to talk about.
|
# ? Sep 4, 2011 07:07 |
|
Does it bother anyone else that using 'genstrings' to create localized strings doesn't use the comments to initially assign the string? IE - it will use: / * This is the string. */ "kThisIsTheString" = "kThisIsTheString" instead of / * This is the string. */ "kThisIsTheString" = "This is the string. " [/whine]
|
# ? Sep 4, 2011 18:23 |
|
I'm guessing it's to reflect the default behaviour of NSLocalizedString of simply returning the key if it doesn't find it in a string table.
|
# ? Sep 4, 2011 22:12 |
|
For those who are in the "App Store" and "iTunes" discussion, here's a little something I just found out: if you want to promote your app (make a website for it, print an ad, etc) you have to follow some really restrictive rules for your marketing. You need a developper ID to get to this PDF (I won't be hosting it) https://developer.apple.com/appstore/AppStoreMarketingGuidelines.pdf Here are some excerpts from this document. Concerning the "Available on App Store" badge: quote:The minimum clear space is equal to Or, concerning the iPhone images they give you to slap your screenshot on: quote:Developers cannot display Apple product images with those of other development quote:The Apple-provided product image can be displayed only on a white background. quote:When promoting your application in marketing communications, state that it is “for” And there's a LOT of other stuff. The point of this post was just to hopefully inform newbies, like I was, that working with Apple is no laughing matter. Not only is the review system very opaque (you do not know when/how your app is reviewed), but there's a lot of other rules you have to respect. Do not accept a contract for making an App in the App Store if you've never done it before, you're almost guaranteed to not be able to respect your deadline because of this. Once you know all the perks though, you can estimate very precisely what kind of bumps you're going to run into.
|
# ? Sep 5, 2011 12:17 |
|
lord funk posted:Does it bother anyone else that using 'genstrings' to create localized strings doesn't use the comments to initially assign the string? IE - it will use: That's because the key is supposed to be the original string and the comments are literally just comments for the translator to use to assist with translation. I don't like this system personally because it can result in duplicate keys (the same english word) where a different language will require different words. I'd much rather have the macro take a true arbitrary key, the default text, then comments. I'm sure this design comes from years and years ago and it seems to make much more sense when you think about how it deals with XIB/NIB files. I'm sure you could do what you want by having a post-gen program that uses the comments to create the english translation so you can stick to arbitrary unique keys.
|
# ? Sep 5, 2011 17:47 |
|
Sir Davey posted:And there's a LOT of other stuff. quote:To avoid customer confusion, do not use other versions of Myriad, such as Adobe Myriad, in your Here's one I'm unclear on. Is Apple specifically forbidding me from using Myriad fonts on my website/emails/whatever, if I have an app listed on that same page? Or is it just a recommendations? That seems a little far-reaching to me. I can understand them enforcing guidelines on the link back to their site, I'm okay with that, but telling me I can't use a Myriad font is a little over the line. What if Myriad is the best suited font for my email, flyer, website, etc.?
|
# ? Sep 5, 2011 19:31 |
|
Martytoof posted:Here's one I'm unclear on. Is Apple specifically forbidding me from using Myriad fonts on my website/emails/whatever, if I have an app listed on that same page? Or is it just a recommendations? Usually it all comes down to "don't mislead your users into thinking Apple is endorsing your actions". As long as you don't copy their color scheme, layout and have it look similar enough that it could confuse users, you're fine. They probably just say that to protect themselves in case of a lawsuit or other legal issue. We had an app rejected because you could participate in contests but the rules did not clearly mention Apple was not involved in any way. We altered the text to mention that and the app got validated, we didn't have to put it in big red letters or anything.
|
# ? Sep 5, 2011 23:03 |
|
Martytoof posted:Here's one I'm unclear on. Is Apple specifically forbidding me from using Myriad fonts on my website/emails/whatever, if I have an app listed on that same page? Or is it just a recommendations? But this is where a lawyer can – and should – advise you.
|
# ? Sep 6, 2011 00:53 |
|
Right, that's the takewaway I'd love to get from it too, and I think that's what they mean, but in their wording they use the same "don't use Myriad" phrasing in the same way they list their more absolute "don't delete parts of the App Store logo" rules which are (I would imagine) much stricter. If I had to guess I would say Apple made it vague enough to sound scary on purpose. But I guess in the long run it's not that important.
|
# ? Sep 6, 2011 01:27 |
|
Stupid question time, from a near-newbie to iOS development: My app uses a tab bar as the root view controller, and each tab will then be a navigation controller with an assortment of view controllers inside it. On Tab 1, if I create an array inside the first view controller loaded into the navigation controller, and then through user-interaction push another view controller on to the stack (a different one), how do I access the array from inside that second view controller? I've been led to believe that the navigation controller logic takes care of it for me but I'm not sure. Any help appreciated!
|
# ? Sep 6, 2011 09:38 |
|
GazChap posted:Stupid question time, from a near-newbie to iOS development: You're responsible for giving your view controllers whatever information they need to do their jobs. For example, say you have a master view controller with an array, and a detail view controller that just takes a single object from that array. You'd have: code:
|
# ? Sep 6, 2011 11:37 |
|
Yeah, that's how I've got it at the moment. If I then change the contents of said variable though (e.g. the name of a player) how can I pass that back through to the master view controller so that it updates the array? I've just seen a tutorial online that sets it up through the App Delegate and with some sort of "NSNotificationCenter" stuff that looks like it'll work, is that generally the best way of doing it? I doubt it'll be a problem once I've got it all set up properly, at the moment the app will be using hardcoded arrays of data while I get the logic working (as it's my first real app), and then I'll transfer it over to SQLite/Core Data, which should make things easier.
|
# ? Sep 6, 2011 11:58 |
|
GazChap posted:Yeah, that's how I've got it at the moment. If you do it like pokeyman suggested, you are only passing a reference to that object. That means if you update that object, it will also "update it" in the Array (in reality both the array and the detailsViewController are juste holding a pointer to an object). If you need to refresh your parent view, also pass a reference to the parent view with something like code:
code:
code:
|
# ? Sep 6, 2011 14:30 |
|
GazChap posted:If I then change the contents of said variable though (e.g. the name of a player) how can I pass that back through to the master view controller so that it updates the array? You can do as Sir Davey suggests and keep a reference to the parent controller, or you can use a notification centre, or you can use key-value observing, or a delegate on the navigation controller, or have the master view controller itself deal with reloading the changed item, or just reload everything in -viewWillAppear:. I'm a fan of the last two options, because they're the least fragile for when you switch to Core Data and/or involve other view controllers. For example, you could maintain a 'toReload' property on the master view controller, set it just before you pop the detail view, and then in -viewWillAppear: reload the object you remembered. Or you could simply reload all the views that display data from the array in -viewWillAppear:. It's nice to keep relationships between view controllers simple. Parent view controllers set up child view controllers and that's that, no going up the object graph. You prevent retain cycles and make it easy to swap view controllers out, plus there's no future dickery needed if modal views get involved.
|
# ? Sep 6, 2011 15:07 |
|
pokeyman posted:You can do as Sir Davey suggests and keep a reference to the parent controller, or you can use a notification centre, or you can use key-value observing, or a delegate on the navigation controller, or have the master view controller itself deal with reloading the changed item, or just reload everything in -viewWillAppear:. That's actually a better solution and it's what I do (call reloadData on -viewWillAppear). However I just felt like it was easier to get it done quickly. But even for a modal view controller you're going to have a "parent" view. There's always a parent view.
|
# ? Sep 6, 2011 15:35 |
|
Sir Davey posted:But even for a modal view controller you're going to have a "parent" view. There's always a parent view. Right. The point I was trying to make was for the case where you have a reference to the parent in the child, and the child calls [parent reloadData]. If the parent decides to use a modal view and needs to reload after that too, now you need another reference stored, this time in the modal view. It's a poorly-scaling solution.
|
# ? Sep 6, 2011 16:00 |
|
Sir Davey posted:If you do it like pokeyman suggested, you are only passing a reference to that object. That means if you update that object, it will also "update it" in the Array (in reality both the array and the detailsViewController are juste holding a pointer to an object). MasterViewController: code:
code:
If I then NSLog the array after the call, the array doesn't have the updated value in it. I'm probably being thick and missing something really obvious. //edit: I've missed out the bits of code that handle putting the data into the TableViewCells etc. - that all works fine.
|
# ? Sep 6, 2011 16:03 |
|
Oh, I assumed you were passing around some kind of model object. If you're passing straight-up strings then you'll either need to pass in the array itself and mutate it, or mutate the array when the detail view calls back before popping.
|
# ? Sep 6, 2011 17:15 |
|
Ah-haaa. Got it working now, thanks. Hopefully when I get it integrated into Core Data everything like this will basically take care of itself!
|
# ? Sep 6, 2011 17:26 |
|
Apple are driving me crazy. I created an app, and they rejected it. I fixed the issue, and re-uploaded it. They rejected it again, and gave some very vague reasons. Upon me replying they said "We need to phone you about this issue, give us your number" And a week later they still haven't phoned. I am tearing my hair out. I have had an app rejected before, again with vague reasons. I fixed it and that one was accepted upon re-submission. In essence, the resolution centre is absolutely terrible. They have simply ignored roughly half of any messages I send through the resolution centre, and when they do reply, it's never particularly helpful. Is there a trick to getting these people to take you seriously? Funso Banjo fucked around with this message at 20:18 on Sep 6, 2011 |
# ? Sep 6, 2011 20:08 |
|
Funso Banjo posted:Apple are driving me crazy. What does your app do?
|
# ? Sep 6, 2011 20:41 |
|
Yeah, I was ready for app approval to be a massive pain in the rear end, but three apps later, they've overlooked all of my several UI flaws (meaning the UI is usable, and it doesn't explicitly break any rules they've written down, but it's not ideal). My apps don't do anything particularly exciting or novel, true, but I still have yet to figure out why so many people are having problems with the submission process. I am fairly obsessive about testing, and I will reject my own submissions if I find a bug that is 99.9% unlikely to be tested or ever actually occur, but I would assume other developers exercise similar or better quality control.
|
# ? Sep 7, 2011 03:38 |
|
Zhentar posted:KDiff3 works well, although visually speaking it's not a well done port. I've used KDiff3 with Mercurial and MacHG, but the integration seems pretty weak (or I'm just not understanding MacHG well) When I get conflicts I tend to just hand edit them these days. Bit of a oval office but oh well. I sort of have to anyway when I get the conflicts on the headless dev+deployment servers, so its a skill I'm pretty adept at anyway.
|
# ? Sep 7, 2011 05:34 |
|
Funso Banjo posted:Apple are driving me crazy. Once upon a time I'd say "email steve jobs" (seriously, the dude actually reads his email). But thats probably not a crash hot idea anymore. Cancer/bad organs/etc means he's probably more interested now in realigning his charkras/making peace with shiva or whatever hippy poo poo he retains from his youth than being a helpful tech mogul. And fair enough I suppose. If I was looking mortality down the barrel of the gun I'd be pretty not giving of a gently caress about workplace poo poo.
|
# ? Sep 7, 2011 05:37 |
|
PT6A posted:I am fairly obsessive about testing, and I will reject my own submissions if I find a bug that is 99.9% unlikely to be tested or ever actually occur, but I would assume other developers exercise similar or better quality control. Yeh, my problem is nothing like quality control, it hasn't been rejected because of technical reasons. It's regarding content, and what Apple would rather you didn't include in certain apps. It's a very arbitrary thing, and some reviewers let it go, while others will pick it up and reject the app because of it. I can't go into details (and you wouldn't want to know I expect) but other apps that are almost identical have been accepted no problem. One was rejected and accepted upon resubmission despite no change (because a different review staff member dealt with it who had different standards) another was rejected and "fixed". My problem is not with why it was rejected, or with the initial accepting/rejecting process. It's the fact that the staff who deal with resolutions are extremely flakey, and lack a standard practice. And then when a discussion is required, they seem to lack professionalism. Having said that I blew my top at them last night after posting here, after a week of inactivity on their part, and that seems to have got them moving again. It shouldn't be required though.
|
# ? Sep 7, 2011 09:23 |
|
If you're trying to get around the rules by being sneaky or clever then yes, you are going to have problems.
|
# ? Sep 7, 2011 09:47 |
|
Doc Block posted:If you're trying to get around the rules by being sneaky or clever then yes, you are going to have problems. Nothing like that. Don't presume that just because someone is having trouble with Apple that they must be trying to do something underhand. I can't go into details due to the contract with the client, but the issue with Apple is a simple thing that would be sorted out in moments if a proper dialogue system was in place. Funso Banjo fucked around with this message at 11:53 on Sep 7, 2011 |
# ? Sep 7, 2011 11:39 |
|
Funso Banjo posted:Nothing like that. There is some intentionally vague language in the App Store Review Guidelines, and I'm sure the reviewers have to walk on eggshells. If they write you and tell you they rejected your app for X specific reason, or that you could do Y thing to fix it, it sets precedent for other developers to find ways around it. It's a legal thing. PT6A posted:Yeah, I was ready for app approval to be a massive pain in the rear end, but three apps later, they've overlooked all of my several UI flaws (meaning the UI is usable, and it doesn't explicitly break any rules they've written down, but it's not ideal). My first release of an app didn't launch at all on iPod touches, and it passed through. I wish they had rejected it...
|
# ? Sep 7, 2011 16:36 |
|
A nice American lady from Apple called me a couple of hours ago and apologised and told me to resubmit it and she'll make sure it gets approved first thing in the morning. I like Apple really, it's just maddening that something so simple took 3 weeks to sort out. I have a client getting frustrated on one side, and Apple trying to pussyfoot the issue on the other. And I'm in the middle. It's hard work.
|
# ? Sep 7, 2011 21:13 |
|
Just curious about personal experience here: How many of you guys started in iOS development and parlayed that into MacOS X development to any significant degree?
|
# ? Sep 8, 2011 05:40 |
|
Martytoof posted:Just curious about personal experience here: How many of you guys started in iOS development and parlayed that into MacOS X development to any significant degree? I went in the other direction, if you're just looking for a show of hands. But I felt like answering your question as "I'm curious what the difference is". There is a massive amount of overlap. The Objective-C runtime is effectively the same between iOS and Mac OS X 64-bit since 10.5, which is every Mac sold in the last five years. The Foundation framework is nearly identical, so all your NSArrays and NSDictionaries and NSNotifications and NSUserDefaults work the same. AppKit and UIKit are quite different but endlessly reuse the same patterns, especially model-view-controller and delegation. So while NSTableView doesn't have the same interface as UITableView, the same principles are at work and the differences aren't hard to swallow. Key-value coding and observing work the same. Core Data is largely the same. Core Animation doesn't change much. A ton of what you've learned writing for Cocoa Touch will transfer to Cocoa. I find the biggest difference is that Mac OS X has way more baggage. I'm not saying that's bad or even surprising, given the age of the platform, but some things might take you a couple more lines on Mac OS X compared to iOS. Like converting between CGRect and NSRect, or getting an NSView to use Core Animation, or adding subviews to a window (since NSWindow isn't an NSView). And if you ever need to dive down into Carbon, you'll see why not having it on iOS is a massive blessing. That said, Mac OS X has its perks too, like garbage collection (though that's not going to be an advantage for long), bindings, and the ability to run yours and other people's code without codesigning and store approval. pokeyman fucked around with this message at 23:26 on Sep 8, 2011 |
# ? Sep 8, 2011 09:00 |
|
I'm getting an odd response from moving a UISlider (that, up until now, has been perfectly normal). It seems like something in the system is making a new [NSDictionary dictionaryWithContentsOfFile] when I move it. Instruments readout: I only call dictionaryWithContentsOfFile in my -didFinishLaunching method, and nowhere else. Where might this be coming from? Edit: figured it out. It sends a notification that the current preset has been changed, and that was writing to the user defaults every time. Fixed. lord funk fucked around with this message at 17:57 on Sep 8, 2011 |
# ? Sep 8, 2011 17:26 |
|
Is it possible to customize/reskin audio controls on the html 5 audio tag on ipads? If so, can anyone provide a link to an explanation or a really simple example (like a new play button)? Edit: Let me be more specific, the page is being pulled into an app. Benson Cunningham fucked around with this message at 22:26 on Sep 8, 2011 |
# ? Sep 8, 2011 21:37 |
|
pokeyman posted:I went in the other direction, if you're just looking for a show of hands. But I felt like answering your question as "I'm curious what the difference is". This is pretty much what I hoped someone would post, their personal experiences. Thanks!
|
# ? Sep 8, 2011 21:40 |
|
Benson Cunningham posted:Is it possible to customize/reskin audio controls on the html 5 audio tag on ipads? If so, can anyone provide a link to an explanation or a really simple example (like a new play button)? I haven't seen anyone customize the built-in controls, but you could certainly make your own controls and hook them up via some javascript. (Though I seem to remember something about hidden audio tags not actually playing on iOS, could be making that up though. If I'm right about this, you could have the page notify the app to start playing something, and the app can update the page on its status.)
|
# ? Sep 8, 2011 23:29 |
|
Right now I'm not having any luck using html 5 tags with custom controls to play audio in an application.pre:<audio src="../assets/audio_test.mp3"> Audio not supported </audio> <script> var audio = document.getElementsByTagName('audio')[0]; </script> <div style="position:absolute; left:400px; top:200px;"> <input style="padding:30px;" type="button" value="Play" onclick="audio.play()"> <input style="padding:30px;" type="button" value="Pause" onclick="audio.pause()"> </div>
|
# ? Sep 9, 2011 01:48 |
|
Works great for me on an iPad 2,1 running iOS 4.3.3.
|
# ? Sep 9, 2011 07:32 |
|
|
# ? May 15, 2024 18:06 |
|
Martytoof posted:Just curious about personal experience here: How many of you guys started in iOS development and parlayed that into MacOS X development to any significant degree? That said, the Mac App Store is pretty aces right now (and we probably wouldn't have attempted a Mac version if it didn't exist).
|
# ? Sep 10, 2011 10:21 |