How can I make the background of my app semi-transparent so that I can show the home screen wallpaper, like "Reminders" iOS app?
This is one of those goodies that Apple reserves for themselves, unfortunately.
Because your app is sandboxed (can't see inside other apps), you're only allowed to use what iOS will allow you to use. When your app is loaded, the app is then what's shown on the iOS stack, independent of the home screen, and Apple doesn't make the home screen available to you.
You'll notice when you load the app that the animation shows the app maximizing over the home screen. Unfortunately, that's a bit of a visual trick, as the home screen isn't necessarily left laying there in memory.
What if your app takes a screenshot of the home screen while launching (not sure if that is possible) and then you make that image the background image of the views in your app?
There seems to have been a private method that worked in iOS 7:
[[UIApplication sharedApplication] _setApplicationIsOpaque: NO]
But your app would probably be rejected. And even that method has silently failed since iOS 8.
Related
This Xamarin.ios app on iPhone must have no splash and no display whatsoever and must leave previous app displayed.
Is is launched by an Objective-C app and it only runs for a short time and then ends itself, leaving screen of the ObjC app always displayed
I need the app that launched it to remain in focus.
USAGE STEPS...
I open the ObjC app, which has command buttons
I press button that starts my Xamarin.ios app which should have no display at all
ObjC app button menu remains displayed
Xamarin.ios app runs and then ends itself
ObjC app button menu remains
Please help -- am under the "time gun" .
This is not possible on iOS - if it makes it easier for you you could have whole the time in this world (and not being under the "time gun") and could not solve it unless Apple changes something in future iOS releases which is unlikely.
The closest you could get to it is to record the screenshot of ObjC app before it launches Xamarin.iOS app, send it some way to Xamarin app (the best way would be if they could be the same App Group), put empty splash screen and ensure that it displays just a split of the second and then display your screenshot in the Xamarin app and do whatever you want to do.
I was wondering if you can make the home screen visible through an app.
For example, let's take an example from the Apple Calculator. On macOS, the top is blurred and you can see everything through it.
I know iOS is a whole different OS and works through views and not tabs, but still: is it possible to e.g. blur the top of the iOS calculator and see the home screen through it?
Thanks, Ben
Unfortunately this is not possible, as this could be a serious breach of privacy for iPhone users.
If you could make the home screen visible through an app, a developer could technically save pictures of users' homescreens and store them in a remote database, which could give them access to private information. As a result, Apple doesn't allow you to do this.
iOS Suggested App feature will show app icon on left bottom corner in iPhone lock screen.
Which delegate method will be called (on UIApplication or I don't know)
when clicking on the bottom left app icon ?
The Suggested Apps feature is a list of apps that are popular/relevant to specific locations, managed entirely by Apple.One can request to be added to that list for a specific app.
You can read more about it in this answer to a similar question, where an Apple Tech Support explains it: https://stackoverflow.com/a/26676020/2242359
Sliding up the icon from there will either open the AppStore page of the app or simply launch the app.
The other way to get you app icon to the corner of the lock screen is by using iBeacon - in that way the app must already be installed on the users device and the icon will appear when getting close to the iBeacon device.
I am trying to show the home screen or springboard in the background of launch image.
But what I actually get is in iOS 7
and in iOS 6.1
Is there any possibility of showing home screen or springboard in background while launching the app?
You can't do it. And any home screen screenshot you bundle with your app is never going to match a users actual home screen. As you've seen iOS covers the home screen when an app is launched even if you don't provide a launch image, and if you provide an incorrectly shaped one your app will be rejected at submission.
Just make a launch image as recommended by apple, with a minimal version of your interface on it. It's not a "splash screen" or an opportunity to shove your logo in the users face.
The best you can do is take a screen shot of your home screen and then use that image as the start up image, you can't do anything dynamic to that image because that image is what the OS shows whilst loading you app, i.e. before your app has a chance to start running.
The app that I'm working on is automatically showing the splash screen only when it goes into background to make a call.
The other functions of going out of the app and becoming active again does not "activate" the splash screen. For example, going out of the app into an external website, phone map or another application and coming back into the app will show user the previous state and does not show the splash screen.
Is this something that can be controlled by the app side or is this an iOS feature that apple automatically handles when a phone call is made?
I have managed the leaks on the app side and all is good now so it can't be anything to do with memory management on the app side. Is there anything else that can be done indirectly so that the splash screen will not show?
The launch image is not a "splash screen". The launch image is used to prevent show a black screen while the app is loaded, and you should use it with an in-app screen which gives the feeling of a quick launch. If you don't show the launch image, you will get a black screen.
Workaround
So, as workaround, my suggestion is that you take an static snapshot of your App, something generic (like the background and toolbars) and use it as launch images. This will give the appearance that the app start immediately, without "splash image". This is what Apple apps do, you can see this in apps like Stocks or Settings.
You see?. The left screen is how your launch image should look.
Check this Apple documentation iOS Human Interface guidelines to understand this subject.
Good luck!