Opt-out from Supporting iPhone 5 Layout - iphone-5

This sounds to be a weird question, but I would like my App not to support iPhone 5 layout at this moment.
I know, to support iPhone 5 layout, I have to add a Default-568h#2x.png as Launch Image, then the XIB will be resized and supports iPhone 5.
The current issue is, the layout we currently have does not have iPhone 5 4-inch layout. If iPhone 5 4-inch layout is enabled, the buttons are disabled. After discussed with co-workers, we decide not to support iPhone 5 layout at this moment, i.e. we prefer to leave black borders on top & bottom of the App. Is it possible to submit an App without Default-568h#2x.png ?

Yes, that's possible. The Default-568h#2x.png is just a flag to trigger iPhone 5 support and we've successfully submitted fixes to Apps without adding the Default-568h#2x.png file. Apple will currently not reject your App update for not supporting iPhone 5.
Of course you should update the App over time and I would not be surprised that Apple will change this policy in the future, especially for new Apps. But for now you're okay!

Related

iOS 12 beta 4 CoreLocation from background launch

My app tracks users' travel (with their knowledge and consent, and with appropriate permissions set). A significant location change event starts the app, and then the app starts updating locations.
This works great for iOS 10 and 11, but it isn't working for the iOS 12 betas (tested beta 3 and 4) - the app is getting started, but it is either not getting location updates, or it is not staying active in the background.
I filed a bug report with Apple, and they called my bug report a dupe of an existing bug that's open, but I couldn't see details on the existing bug.
Does anyone have any more information on this? I scoured release notes and developer event presentations, but I didn't find any mention of something Apple purposefully changed that might cause this.
What I'd really like to know is if there's an intended behavior change that I need to support before the final iOS 12 release. Even better, if there's some workaround that will get this working in the beta versions, that would let me sleep at night...
Seems to be fixed in iOS 12 beta 5 or 6 - upgraded iOS and it started working without other changes.

Universal App is being tested in Iphone compatibility mode by apple

I have (now) marked my app to be a Universal App.
When i deploy it locally to an ipad it runs as a native iPad app (all good, nice rendering, heaps of space)
when i submit it to Apple for review they reject it becasue they run it in iphone compatibility app (basically like an iphone 4 ) and the rendering goes wrong (not enough space).
What else do i need to set in the Xamarin project so it will never run in iPhone compatibility mode on the iPad ?
turns out the itunesconnect site is realy not that user friendly...apple eh..
i found a way to delete the old build and link to the new build and they approved it
funny thing is that they seem to write the version of what you enter in itunes connect into your app. so even though they were testing an old build, the screenshot was showing the new build version.. very confusing

Xcode9's Augmented Reality App template sandbox error

Apple introduced its ARKit at WWDC 17 and they also added a new project template to Xcode 9 called "Augmented Reality App" which is basically supposed to be the demo app during WWDC keynote or something like that.
However, the original template itself returns a critical error during runtime, which is the following:
libMobileGestalt MobileGestaltSupport.m:153: pid 701 ({Your app's name}) does
not have sandbox access for frZQaeyWLUvLjeuEK43hmg and IS NOT
appropriately entitled
What I tried so far:
I tried all 3 different template projects: SpriteKit, SceneKit and Metal. The error stays.
I created entitlements file and set "App sandbox" to true. No luck.
Googled the error and saw that this error is actually older (and arguably less popular) than ARKit. Sadly, nobody has found a solution yet.
Lastly, I do not think that could be relevant but I tried to run it on my iPhone 6. Has anyone managed to run AR app template? If so, how? Or anyone has any bit of information on libMobileGestalt?
According to Apple documentation, only devices powered by A9 and higher can use ARKit.
ARKit runs on the Apple A9 and A10 processors
On iOS devices with an A9 processor or later, the
ARWorldTrackingSessionConfiguration
subclass provides high-precision motion tracking and enables features to help you place virtual content in relation to real-world surfaces.
On other devices supported by ARKit, the
ARSessionConfiguration
base class provides basic motion tracking that permits slightly less immersive AR experiences.
The iPhone 6s and 6s plus have A9 chips, so those and all devices after that can run ARKit. Found it here.
Following iOS devices (with iOS 11 installed) are supporting ARKit:
iPhone 6S and 6S Plus
iPhone 7 and 7 Plus
iPhone SE
iPad Pro (9.7, 10.5 or 12.9)
iPad (2017)
Here are some reference links related to ARKit Support & iOS device configurations:
ARKit runs on the Apple A9 and A10 processors.
iPhone Models - (Chip)
iPad Models - (Chip)

XPages mobile controls not working with iOS 8

We have a couple of simple apps that use the XPages mobile controls that no longer work on iOS 8 devices. Tapping on outline entries, dataview entries, buttons in the header, etc. doesn't seem to do anything. Tapping on a category to expand or collapse it in a categorized view is the only thing that seems to work. The apps are running on a Domino 9.0 server with the openntf essentials package installed. iOS 7 and Android devices work fine.
Anybody else having problems with the mobile controls and iOS 8?
I can confirm this problem with our apps that use the mobile controls as well. It seems to be an issue with Dojo 1.8 that is used by these controls. Debug on an iPad running iOS 8 reveals "Deprecated attempt to access property 'changedTouches' on a non-TouchEvent object." and "Typerror: Attempted to assign to readonly property." in Dojo.js:7956.
UPDATE: Got it working by copying Dojo 1.9.4 to the domino\js folder. Also had to add in the ibm and template folders into the dojo-1.9.4 folder. These were extracted from the xsp.dojo.jar file in the Domino\osgi\shared\eclipse\plugins\com.ibm.xsp.dojo_9.0.1.20140801-1000 folder. Then had to restart the server. Restarting http by itself doesn't work.
IBM has just released 9.0.1 Fix Pack 2 Interim Fix 1 which fixes SPR PALT9P8JDG "XPage Mobile Controls Fail On iOS 8". The technote has been updated accordingly.
For the latest information on this issue, see this technote: http://www-01.ibm.com/support/docview.wss?uid=swg21686751

Apps slower to start on iPhone 4, iOS 5.1 compiled with Xcode 4.3.1?

I am keeping a close eye on the start time of my app in development. In main I store the start time using CFAbsoluteTimeGetCurrent() and log elapsed time when didFinishLaunchingWithOptions gets called, as well as during the initialization and painting of my StopWatchView and finally in the viewDidAppear of the main view controller. This served me very well in figuring out where my start time goes and keeping it in check. My startup performance tests on actual devices were done on iPhone 3G (iOS 4.2.1) and iPhone 4.
Since upgrading the device to iOS 5.1 I was forced to upgrade the Xcode to the version 4.3.1, too. I have immediately noticed that the start times on iPhone 4 changed dramatically. All measurements were performed with Xcode attached for debugging, reading the elapsed times from logs in console. Now I've also added debugging label that displays elapsed time to be able to measure without debugger attached.
To eliminate the possibility that the change was caused by something in my code, I've created new Utility Application and confirmed the slowdown. The iPhone 4 used to be ~3x faster than iPhone 3G, now it starts slower(!!!) than 3G. The startup time has also become highly volatile (+- 0.3s), where it used to be +-0.05s. The volatility disappears in Airplane Mode, so I suspect it's caused by some background process related to iCloud. However I'm very puzzled by 3x slower startup time on iPhone 4 before and after the upgrade.
Here are the average startup times, first during debugging in Xcode (then without Xcode):
Debug No-debug
iPhone 3G: 1.23s (0.67s)
iPhone 4: 0.43s (-----) [iOS 5.0.1, Xcode 4.3]
iPhone 4: 1.53s (1.18s) [iOS 5.1, Xcode 4.3.1]
iPad 2: 0.41s (0.22s) [iOS 5.1, Xcode 4.3.1]
I don't know if this is caused by iOS 5.1 or Xcode 4.3.1 or if this is iPhone 4 specific problem. Does anybody see similar slowdown?
On further investigation, I have noticed during profiling (after watching WWDC 2012 Session 235 "iOS App Performance - Responsiveness") that the time difference I have noticed is attributable to the call to _UIAccessibilityInitialize.
I have been testing the accessibility of my app and have enabled Settings > Accessibility > Tripple-click Home > Ask. This coincided with the release of the 5.1 update and I have erroneously attributed the problem to the new version. I guess that the OS has to initialize the accessibility machinery, so that you can turn on the VoiceOver anytime, without it needing to restart all open apps.
The performance impact of enabling accessibility is not clearly documented, as far as I know. So, to save other performance and accessibility conscious developers this surprise, know that even with Tripple-click Home set to Ask, you pay the cost of _UIAccessibilityInitialize.
I'm also about to devise a scheme to do my custom accessibilityLabels lazily, as they too, are having non-negligable impact on the responsiveness of my app in normal use. I guess there is no free lunch after all ;-)

Resources