|
A 2006-era Macbook has a 32-bit-only processor and so will be very limiting. You will not be able to install the latest operating system, which means you won't be able to install future versions of the tools. I strongly recommend at least getting something that's 64-bit capable.
rjmccall fucked around with this message at 22:07 on Sep 19, 2012 |
# ? Sep 19, 2012 22:04 |
|
|
# ? May 21, 2024 05:13 |
|
According to everymac the late-2006 MacBook has a T5600, which according to Intel is 64-bit. Though there could well be other requirements preventing Mountain Lion from being installed. That said, while you'll be fine right this second, it won't be long until a late-2006 MacBook won't build apps you can submit to the App Store. If that's not a problem for you, super.
|
# ? Sep 19, 2012 22:43 |
|
Ah, you're right, the *late* 2006 MacBooks can run 64-bit code. They are not, however, supported by Mountain Lion.
|
# ? Sep 19, 2012 23:48 |
|
Anything with Intel's GMA 950 GPU (including that Macbook Air) won't run Mountain Lion. Get something else.
|
# ? Sep 20, 2012 00:12 |
|
Vashro posted:everywhere I've read (including this thread) does say 2007 or later Updated OP to be more accurate about this.
|
# ? Sep 20, 2012 01:43 |
|
I know it represents a shrinking portion of the market, but I'm kind of bummed that XCode 4.5 doesn't support armv6.
|
# ? Sep 20, 2012 01:43 |
|
Even the 3GS was armv7.
|
# ? Sep 20, 2012 02:13 |
|
Small White Dragon posted:I know it represents a shrinking portion of the market, but I'm kind of bummed that XCode 4.5 doesn't support armv6. I did some Googling and found this blog that describes a way to compile armv6 with 4.5. It basically involves copying the iOS 5.1 SDK from an older version of Xcode and fiddling with the build settings, like typing in certain things manually since Xcode doesn't have a dropdown selection for them. In these projects you can build armv6/7 instead of armv7/7s (there's no way to do armv6/7/7s) http://blog.chpwn.com/post/31824877081
|
# ? Sep 20, 2012 04:15 |
|
ultramiraculous posted:In XCode, you can go into Organizer when the device plugged and get all the files your app created off. Basically just go to Applications on the device, then choose the app you want, when choose download, and you'll end up with a bundle of everything in that app's sandbox. That's pretty much exactly what I wanted, thanks! I wish they would let you grab individual files...
|
# ? Sep 20, 2012 05:30 |
|
Thanks for all the info, goons. I'll keep shopping. Suppose it can't hurt to shell out a few extra bucks for assurance and performance.
|
# ? Sep 20, 2012 05:49 |
|
Was the in-app purchase hack ever fixed?
|
# ? Sep 20, 2012 09:42 |
|
Small White Dragon posted:I know it represents a shrinking portion of the market, but I'm kind of bummed that XCode 4.5 doesn't support armv6. So suppose I still have enough (vocal) users using 1st & 2nd-gen devices that I don't want to drop support for them yet. Mainly it's a case that the app is connected with a non-profit organization, and some of the people with older devices have older devices because they're too busy giving money to the non-profit rather than Apple. So I don't want to piss them off just yet even though here in the real world we know when it's time to walk away from a 4 year old device. But I don't want my app to look like crap on iPhone 5 either. Can I keep using 4.4 to build, put the Default-568h@2x.png file in there, and that's all it would take to force it to run in tall mode on an iPhone 5? Then if I'm being smart enough about laying out my UI relative to the window size, everything'd be great on either device? Or do I need to actually build against 4.5 and the iOS 6 SDK? kitten smoothie fucked around with this message at 16:43 on Sep 20, 2012 |
# ? Sep 20, 2012 16:40 |
|
Am i reading this latest email from apple right? If your app uses a resolution specifically for iphone 5 include iphone 5 screenshots screenshots. If it normal or retina sized, just regular shots are ok? It's tempting to read it as saying you must include shots to show how it looks on the new phone. But it's not actually saying that, right?
|
# ? Sep 20, 2012 19:28 |
|
If your app supports the iPhone 5 then you should probably have iPhone 5 screenshots. Just take them with the simulator if you need to.
|
# ? Sep 20, 2012 20:04 |
|
Hey so I keep hearing a lot about 'only running UI on the main thread' etc. Does anybody know of any tutorials showing a pattern or way for setting about doing this?
|
# ? Sep 20, 2012 23:44 |
|
code:
Change to dispatch_sync to wait until the block is done.
|
# ? Sep 20, 2012 23:55 |
|
You just use NSOperationQueue or GCD to run other stuff on a background queue, which will run in its own background thread. Then, when that other thing is done, have it add a block to the main queue (which runs on the main thread) which updates your UI to say its done or whatever. Apple has posted a WWDC 2012 video about it, I think the video was called Developing Concurrent UIs. It talks about how to offload long-running tasks to a background queue, even expensive drawing operations.
|
# ? Sep 20, 2012 23:58 |
|
pokeyman posted:
Clarified your example. Calling GCD directly is fine for one-off instances of needing to perform something off the main thread, but for anything where you're adding a bunch of stuff to a background queue you're better off making your own queue(s) and using NSOperationQueue to manage them because you can cancel execution of that queue and whatnot. Also, be careful with dispatch_sync(). Trying to use it to add a block to the calling thread will cause a deadlock. Doc Block fucked around with this message at 00:11 on Sep 21, 2012 |
# ? Sep 21, 2012 00:02 |
|
I'm having a really weird problem here. I have nested enumerations with ALAssetsLibrary; the top one goes through albums until it finds the album I want; then I get the number of assets and enumerate the pictures. The problem is that while I get the correct number of assets, when I make a range from it (NSMakeRange[0, numberofAssets]), the range is out of bounds. I've verified through NSLog that the number of assets is what I'm expecting -- i.e., if I have the album with one picture in it, it will show as having one asset, but trying to enumerate that album results in an out of bounds error. What the heck is happening here? Edit: Googling and testing seems to indicate that this is Apple's problem as the ALAssetsLibrary isn't being updated properly. I even tried registering an observer so that I would know for sure that the library had been updated, but even then, I still get segfaults with out of range errors. So I figured, worst-case scenario, I'd just make users go to the Photos app with a button -- but apparently there's no URL scheme for that. ugh. tarepanda fucked around with this message at 07:37 on Sep 21, 2012 |
# ? Sep 21, 2012 06:46 |
|
Does anyone know what the memory usage is for CAGradientLayer can be? I'm using it a background that fills the entire screen for an iPad gen 3 game, and I'm planning to sometimes have two loaded at once when they need to do a sliding transition.
|
# ? Sep 21, 2012 19:15 |
|
If its cached (probably) rather than redrawn every frame, it would take up 2048x1536x4 bytes, so about 12 megabytes.
|
# ? Sep 21, 2012 20:26 |
|
Doc Block posted:If its cached (probably) rather than redrawn every frame, it would take up 2048x1536x4 bytes, so about 12 megabytes. Yikes! That's way more than I was hoping for. It's not being redrawn 99% of the time, unless it's slid off the screen. It sounds strange, but I'm using Cocos2D with a transparent background so that I can have my own parallax background and gradient that's unaffected by whatever Cocos2D scene transitions that occur. Does anyone know of a better alternative to CAGradientLayer that's less memory hungry and still not CPU intensive? It doesn't have to look super smooth or that good. Maybe there's a way to still use CAGradientLayer while filling up the screen and using less memory, in trade of quality?
|
# ? Sep 21, 2012 20:45 |
|
Any Retina full-screen element on the iPad 3 is going to have a 12 megabyte backing store.
|
# ? Sep 22, 2012 01:42 |
|
Thanks for your info. Does it have to be retina? Or does it not make a difference if it covers the screen?
|
# ? Sep 22, 2012 04:47 |
|
LP0 ON FIRE posted:It sounds strange, but I'm using Cocos2D with a transparent background so that I can have my own parallax background and gradient that's unaffected by whatever Cocos2D scene transitions that occur. I don't think this is that strange is it? I did the same (but with a static UIImage) on a game I finished recently.
|
# ? Sep 22, 2012 10:48 |
|
I'm still working on that branch schedule app and I was wondering: is there a way to efficiently update the schedules from online? (As in, the app should check a specific URL for the schedule plist and if it's been updated, download/store it and then use that new plist.)
|
# ? Sep 22, 2012 21:05 |
|
I'm not sure what you're asking. That sounds like a perfectly good solution. Is there something you're stuck on?
|
# ? Sep 22, 2012 22:18 |
|
I have these two files, Text.h and Text.m in one of my projects. With the code below xcode gives a warning that there is no prototype for the function Test() and an error when I try to use the NSString myText saying that myText is an undeclated identifier. This exact setup will work in another .h and .m file that declares a UIImage view, the only difference I can see is that this class is a UIView. Text.h: code:
code:
|
# ? Sep 23, 2012 00:51 |
|
You want to define an instance method. Remember myText in instance methods is shorthand for self->myText, where self is the implicit first parameter to a method call. Your function isn't defined as a method, so there's no self to dereference, and there's no myText in scope, hence the error.
|
# ? Sep 23, 2012 01:11 |
|
Yeah, like pokeyman said, to access instance variables like that you need to do it inside an Objective-C instance method so that you have a valid self pointer, but in your code Test() is a C function. Change it to:Objective-C code:
to make it an instance method. Doc Block fucked around with this message at 01:26 on Sep 23, 2012 |
# ? Sep 23, 2012 01:20 |
|
Has anyone else been experiencing performance problems in Xcode since updating to 4.5? After about 2 or 3 hours I have to restart it because it becomes unusable.
|
# ? Sep 23, 2012 01:44 |
|
I was having a few -- for example, it was sucking up over 2 GB RAM at one point while doing nothing but displaying code. A reboot seems to have fixed it, though.
|
# ? Sep 23, 2012 02:31 |
|
Nope. Running fine so far. Ran into something interesting with the iPhone 5: your views aren't iPhone 5-sized when loaded. So if you add any CALayers to a view in, say, the view controller's viewDidLoad, those layers will be normal size instead of iPhone 5 size. Even if you do it the right way and set the layer's frame with "whateverLayer.frame = self.view.bounds;" or something, the layer will be normal size because the view will still be normal size at that point. You have to go into your XIB and either set the simulated size to Retina 4" (so much for the Simulated Metrics just being something to help you design in IB), resize whatever layers etc. you've added manually, or wait to create the layers (or whatever) until viewWillAppear.
|
# ? Sep 23, 2012 03:32 |
|
Doc Block posted:Yeah, like pokeyman said, to access instance variables like that you need to do it inside an Objective-C instance method so that you have a valid self pointer, but in your code Test() is a C function. Change it to: That fixed it, thanks. So it seems that previously I was defining a function in general terms rather than as a class method.
|
# ? Sep 23, 2012 03:33 |
|
Be aware that there's a difference between a class method and an instance method. A class method does not require a specific instance of that class to work, where an instance method does. For instance, when you load an image with UIImage *image = [UIImage imageNamed:@"image.png"]; you're using the UIImage class's class method "imageNamed". Class methods are denoted in source code with a + instead of -, so if you wanted to do a convenience class method that creates new instances of that class you'd do something like: Objective-C code:
|
# ? Sep 23, 2012 03:58 |
|
Gordon Cole posted:Has anyone else been experiencing performance problems in Xcode since updating to 4.5? After about 2 or 3 hours I have to restart it because it becomes unusable. At least it starts up quickly.
|
# ? Sep 23, 2012 04:17 |
|
It's far from problem free, but 4.5 has been an amazing step up from 4.3 in terms of bug fixes and compiler improvements as far as I've seen. I've been very happy with 4.5 since one of the dev previews. That said, I've still had to fuxcode once a month or so when weird things start happening.
|
# ? Sep 23, 2012 05:50 |
|
Xcode has come a long way since 4.0.
|
# ? Sep 23, 2012 08:18 |
|
Doc Block posted:Class methods don't get a self pointer, because it isn't meant to be something that you use to operate on a specific instance (except when using a class method as an instance creator method). You do get a self pointer, but it points to the class and you probably shouldn't modify it (I've never tried but I can't imagine it'd do any good). I sometimes do things like this for convenience constructors: Objective-C code:
Carthag Tuek fucked around with this message at 13:04 on Sep 23, 2012 |
# ? Sep 23, 2012 13:00 |
|
|
# ? May 21, 2024 05:13 |
|
Yeah, every class should have a designated initializer. I didn't know that class methods got a self pointer that points to the class, though. Thanks.
|
# ? Sep 23, 2012 14:54 |