Screenshots for App Store submission

Tried submitting first app for review, and got rejected for not having iPhone 5 / Retina screenshots.

I took my screenshots that I submitted using Xcode Organizer window and my iPhone 4. I also own a Samsung for Android testing, but don’t own (and don’t want to buy) an iPhone 5.

How can I get screenshots for a device that I don’t own?  I tried looking in both the Corona simulator and in Xcode, and don’t see a way to do it.

run in iphone5 sim.

Although Apple says don’t do it I have used the Corona Simulator to fake my iPhone 5 shots. Just make sure to zoom Corona Simulator to the right level so that the screen capture is more or less right. You will have to use a screen grabber software or Ctrl + PrtScr on Windows or Shift + Command + F4 on Mac. Then use your favorite image editor to crop/resize etc. Good luck.

Thanks, I will do that. But I’m curious, how does Apple expect developers to do it “right” … or they just expect every development shop to have one of every possible phone and pad? That’s a little too much investment for me right now, being a one-man shop.

I do iPad SS on ipad, but others use the Corona Simulator iPhone 4 & 5 for others. As @Ksan says just use zoom and selected Screen Capture then crop edit to submission sizes.

As for your other query - Apples underlying business model is Products and getting people to buy new products to replace their old products - they use developers to assist this by pushing us to include their new features/style/iOS. So yeah apple expects/wants people/you to buy their latest product, Apple’s main concern is hardware, it’s interest in software is in what it can do to help sell hardware!

Now as i said, apple wants - but you don’t need!

T.

Thanks for the quick help, but unfortunately I have one more variation on the question. I have the screenshots from the iPhone 5 simulator, but the graphics programs I have been using so far are not playing nice with them. I used iDraw for making my icons, but it does not appear to have a cropping tool; and I also use GIMP, but it will not paste the screenshots into the canvas.

What graphics do you use for making the iPhone 5 screenshots?  (I am on a Mac, by the way.)

Thanks

I use Pixelmator. I also hear good things about Acorn. Did you grab the image using Cmd + Shift + 4 ?

Command-control-shift-4, then space and click the window. I can paste this into other software, like Word, so it is definitely in the clipboard, but when GIMP insists that there is no imagery in the clipboard when pasting.

I will try the other variations like command-shift-4 (which saves as desktop file).

Also will have a look at Pixelmator and Acorn.

Thanks again

Yes. Suggest you try command-shift-4 and save to a desktop png file. You probably will be ok to import that into iDraw and GIMP. Might save you some $$ since you already have the iDraw and GIMP. 

Good luck!!!

You can also throw in a little temporary capscreen function while you do snapshots. Just move the

circle to somewhere convenient to hit while running your program. On a mac it saves these as

sequentially numbered files to your desktop. Should be able to open them in Gimp. 

Something like this:

[lua]

local capButton = display.newCircle (0,0,200)

capButton.alpha = .004

local function cap(event)

    if event.phase == “ended” then

        local screenCap = display.captureScreen( true )

        display.remove (screenCap)

        screenCap = nil

    end

    return true

end

capButton:addEventListener(“touch”, cap)

[/lua]

I’m sure there are situations where hitting a button to take the snapshot might not be

convenient- a fast paced game perhaps. I wonder if setting it up to trigger with voice (possibly using recording:getTunervolume() )

for hands free screen capture would work well. 

Then you could just play your thing and yell something whenever you want a screen cap. 

 

you could set it up to work off the Mac keyboard

LLC- here’s a version using jstrahan’s suggestion (hit ‘c’ to capture your screen) :

[lua]

local function cap(event)

    if event.keyName== “c” then

        local screenCap = display.captureScreen( true )

        display.remove (screenCap)

        screenCap = nil

    end

    return true

end

Runtime:addEventListener(“key”,cap)

[/lua]

This is great because its precisely the right screen amount (assuming you get your zooming right in simulator) so you have no cropping / resizing to do. Great solution. Thanks for sharing. 

Minor tweak to @roboward’s code.

Each keyPress was generating two screen captures since it was firing two events (phase = “down” and phase = “up”). The following variant triggers screen capture only on the up phase. 

-- hit 'c' to capture your screen local function cap(event) if event.keyName== "c" and event.phase == "up" then local screenCap = display.captureScreen( true ) display.remove (screenCap) screenCap = nil end return true end Runtime:addEventListener("key",cap) -- hit 'c' to capture your screen

Hi guys,

You can actually build for Xcode simulator not device. Then open in Xcode simulator. There is Cmd+S to save screen shot.

You get pixel perfect screenshot base on the device you select.

Another useful thing about building for Xcode simulator is that you can test Gamecenter without building to actual device.

burhan

Tried the Xcode simulator gambit, and had an unwelcome surprise. In the Corona simulator the iPhone 5 fills the screen correctly, but when I run the same app in the Xcode iPhone 5 simulator, there are black filler bars at top and bottom.

I’m alarmed that the two simulators handle display height differently, since I don’t have access to a physical iPhone 5 to test with.

I am using a config.lua that I copied from a Corona Labs web page, which tests for iPhone and height:

if string.sub(system.getInfo(“model”),1,4) == “iPad” then

    application = 

    {

        content =

        {

            width = 360,

            height = 480,

            scale = “letterBox”,

<snip>

        }

    }

elseif string.sub(system.getInfo(“model”),1,2) == “iP” and display.pixelHeight > 960 then

    application = 

    {

        content =

        {

            width = 320,

            height = 568,

            scale = “letterBox”,

<snip>

        }

    }

elseif string.sub(system.getInfo(“model”),1,2) == “iP” then

    application = 

    {

        content =

        {

            width = 320,

            height = 480,

            scale = “letterBox”,

<snip>

       }

    }

Hi @llc

You probably have not included  Default-568h@2x.png files in your root folder ( 640x1136px).

This is a requirement to activate the iphone 5 tall mode.

burhan

The Default.png files is something I not only missed, I mistakenly thought they were no longer a good idea. Another text I read implied (if I recall correctly) that the “splash screen” startup images were not really necessary, and might even slow things down. Possibly this text was written before the Retina / iPhone 5 came out, making these images required.

I note also that the Corona simulator seems to ignore not having this image (Default-568h@2x.png), while the Xcode simulator does not ignore it.

I’m adding the three png files now (Default.png 320 x 480, Default@2x.png 640 x 960, and Default-568h@2x.pgn 640 x 1136) to my source tree.

Thank you all once again!

run in iphone5 sim.