Submitting an iphone 5 optimized app to app store - ios6

When I started creating my app in xcode, all of the view controllers in the main storyboard were the iphone 5 4 inch display. So I have finally completed my iphone 5 app, however, when I run the app on an iphone 4 simulator everything is overlapping and skewed. Do I have to completely duplicate the app and downscale all my views to the iphone 4 3.5 inch display, or do I just go ahead and submit the app as it is?

What you should be doing is either:
a) Turn on auto-layout in your storyboard file and make sure that the views are correctly laid out in both screen sizes. There is a button in the Storyboard that toggles the sizes:
b) figure out what the screen size is in code and modify their positions accordingly.
Option a) is the easiest one to do.

Related

ExtJS 4 smartphone size

I had very simple appication written for old (24x80) terminals
working in production company. My client ask me to transfer it
as a web application and I use ExtJS 4 to do it. It looks like
this:
and its working on pc stations without any problem.
But next question of my client is to modify this application to
work also on tablets and smartphones. And only problem we see
is proportion, on smartphone this screens are to small. What is
the best way to do it? How can I resize fields and fonts and buttons depending on screen size?
What you need is a Responsive Application.
The problem is that the responsiveConfig was introduced in ExtJS 5.
So if you cannot move to extjs 5.0 or above take a look at this answer.
Another aproach is to use multiple instances for the view. Create three different view instances, one for desktop, one for tablet and one for mobile, keep the same Controller, Model, Store etc and when you initialize your application display the correct view according to the screen size.

Inability to correctly scale canvas on iOS for an AirConsole controller created in Construct 2

I have been playing around with creating AirConsole controllers using Construct 2. Construct 2 comes with several scaling modes to ensure that the canvas scales as desired. I have tested every possible combination, and found that the simulator (running in Safari, Edge, Chrome, and Firefox) works correctly, the Nexus 5 works correctly, but the iPhone 7 Plus and iPad (running the iPhone AirConsole app) both do not obey the scaling I have set in Construct 2.
At 1280x720, this means a portion of the controller is always offscreen. I have used both the "AirConsole" and "AirConsoleController" plugins on the screen side, and both have the same issue. When I remove both plugins from my Construct 2 project and load the page using airconsole.com/#[SERVER_URL]/pong, the scaling problem goes away, but I lose the ability to call AirConsole API methods (set orientation to landscape, handshake, messaging, etc.).
I fully understand that this probably not high on the priority list, as the AirConsole team has done a great job putting together the controller generator, but would it be possible to take a look into this problem on iOS devices? Is there something happening on the AirConsole side that would overwrite the Construct 2 screen scaling rules for iOS controllers?
One of our team's goals is to create a controller minigame that a user would play on their device while the main game was in progress on screen.html. It would much simpler to do this in Construct 2, rather than coding it by hand.
Edit:
I reran a quick test of the Pong example using the Phaser.io tank screen as a controller, instead of the pong buttons. In this test, I would expect to see the tank screen loading onto the controller. This is what I see on the simulator and on my Nexus 5. On my iPhone, half of the tank screen is off of the edge of the phone.
Since a similar behavior occurs in both the Construct 2 and Phaser.io projects, I have a hunch that the problem might occur whenever a canvas element is placed on iOS screens for AirConsole controllers.
There seems to be a bug on iOS with iframes.
Applying this CSS to the controller.html fixed it for some developers:
html, body {
height: 100%;
overflow: hidden;
}

iPhone 5 screen size black bars

I am having problems in making my iPhone 4 (3.5 inch screen) work on iPhone 5 screen. I have already tried to import Default-568h#2x.png image for a launch image and it works properly in simulator, and when run on real device there are black bars on top and bottom of the screen. Does anybody have similar problem.
All apps that do not include the Default-568h#2x.png file are displayed in a letter box. Include the Default-568h#2x.png will make your app fill the screen on 4" retina devices.
hope this fix the issue.
You could have tested this issue in simulator itself .
There are two possible solutions for this. Listed below:
In the 'Simulated Metrics' section of UIVIew's attributes inspector, you can choose between 3,5" or 4" sizes. Choose 3,5", and make your views and subviews resizable .This will make it automatically scale your view to fit iPhone 5's screen.
2.OR you can make use of Auto Layout (constraints) with the deployment target of iOS 6+.
Hope this will solve the issue.

Strange behaviour for IOS 6 rotation

I have search the net and in the forum for two weeks. I couldn't find anything like my problem.
I have an app build on the IOS 3 and in time I made it compatible with all IOS versions.
All the app is in portrait mode and I only have one screen (a chart) which is in landscape mode. Until IOS 5 and IOS 5 also I get the beautiful rect with black edges when rotating.
On IOS 6 I see that after I rotate I get the chart Nib is being presented from the top right corner. (I can't post an image or a video to demonstrate it as it has a logo and I'm not sure it's allowed.
I am using setRootViewController at the beginning.
I attached a sketch to demonstrate.
How can I retrieve the right animation?

How to make an app that would work fine for both iphone 5 and 4s

I am making an iphone app using the latest Xcode i.e Xcode 4.5.1.
The current XIB files are suited for iphone 5. I am not sure how to make the app that would work on both the screen sizes i.e 3.5 and 4 inch??
Is it that I have too use two different sets of *XIB*s??
Check out this answer, it's the approach I took.
Basically, create two different xibs or storyboards and choose which one to use at application launch.
2 different xib is a kind of solution but you need to play with AutoResizing property of View if you don't want to create different xib's. Also you need to use Default#2x.png for iPhone4 and Default-568#2x.png for iPhone5, these are the SplashScreen images to identify whther app is running on iPhone4 or iPhone4.
If you have created iPhone4 compatible application then just add Default-568#2x.png image. Your application will work for iPhone5. But you need to handle UI for this. For example if you are using UITableView so just use Flexible height instead of hardcore frame.

Resources