I know that pre-ios7 one could only get few things from outside of the sandbox, however... one thing that seems more common when using Apple's apps (!) is that they use a background which is the same as the springboard background.
One example is the "Reminders" app, which uses a translucent background of the springboards background.
I have search here and on Google, but can't find an answer to my question.
Is there anyway I can do this as well in my own app?
With default iOS background:
Onces the springboard background is changed:
Related post:
Use user's Background Image as "theme"
I'm pretty sure Apple uses a private API to do this. I don't think they provide a way for developers to get to it - which is unfortunate, because it's a nice effect.
Related
I've seen some apps for example (Vesper, or iPad's reminders app) make use of a user's home screen background image. How is that possible?
It must be some sort of clever trick to make a transparent View or Window or (Gulp!) Private API?
Anyone hazard a guess?
I haven't tried it myself, but I hear that the private method [[UIApplication sharedApplication] _setApplicationIsOpaque: NO] may do what you're after.
iOS 13 beta 1 supports setting UIApplicationIsOpaque to NO in Info.plist. But, it’s not documented so it will maybe be removed or not allowed on the App Store.
I am working on the app that shows Ads (Video or image) when iPhone is running. If I open any app(eg. Twitter) then also my Ads should be visible at particular interval of time. Is it possible to do so?
No. Your app will not be informed about any other apps being launched. Even if it were, you can't "force-grab" the foreground to display videos. That would totally violate any user interface principle established by iOS.
Besides the technical aspect I'd have my doubts of such an app surviving app review in general, though I don't know the specific part of the TOS right now.
It is possible to show your ads inside your application in intervals or in any pattern you like. However it is not possible to bring your app to foreground when in background to play ads, it is actually not recommended at all. Best thing you can do is set a timer when the app gets in background to send a notification.
I am creating an alarm clock app that requires some user action within the app in order to turn the alarm off. Below is a picture of what another app, Sleep Cycle, does when you turn an alarm on and press the home screen (i.e. background the app).
Here is an image link (I can't post an image yet, no rep despite my many attempts to answer people's questions today) for the effect I want to re-create.
Those that have used iPhone's Personal Hotspot and connected a device will notice that it is the same effect, where a notification appears at the top of the UI - pushing everything down by around 20-40 points. This is highly desirable to an alarm clock app as it encourages the user to keep the app in the foreground so that the app can easily be entered when waking up (instead of relying on the 30 second sound window allowed by local notifications)
Does anyone have any ideas on how to implement this functionality. I assume that it must go somewhere in the:
- (void)applicationDidEnterBackground:(UIApplication *)application
tag within the AppDelegate, but I'm not sure what exactly I need to be reading up on. So if anyone has a link to some relevant Developer Docs that would also be extremely helpful.
Many thanks for your help,
Ryan
There are a handful of built in 'background modes' that change the status bar's appearance depending on what functionality an app provides whilst it's in the background. The one you've identified (a red status bar) is triggered when an app records audio whilst in the background. I presume Sleep Cycle must be acting as though it records audio just for this purpose. Other background modes include VoIP (which I think uses a blue status bar). Check out Apple's documentation on supporting these various background modes
In your case, you'd want to add audio to the UIBackgroundModes property in your Info.plist file.
But note that it wouldn't be unreasonable for Apple to reject an app during review if it pretends to perform one of these background tasks but doesn't. For example, there have been apps in the past that tried playing a silent audio clip continuously in order to stay awake in the background - needless to say Apple got wise to this and the app in question had to change its behaviour.
I’m fairly sure this is going to be straight forward in that it’s probably not possible.
Basically, I’d like to be able to lightly see the background wallpaper through my view in the same way that the new Newsstand app does.
I've tried changing the alpha value of the view, and the background color to clear, but neither of these seem to do it.
Apple has removed the ability to use this api in 7.0.3. What a shame.
You certainly can in iOS7, at least as of a few days ago. In our app once you set the following it makes your background transparent and shows the user wallpaper. If you try to programmatically take a screenshot, it will just show black instead.
Set UIApplicationIsOpaque to false in the project plist
In the app delegate load function:
self.window.backgroundColor = [UIColor clearColor];
self.window.opaque = NO;
Set the UIViewController.view's background color to [UIColor clearColor]
Good news. From iOS 13, the background transparency can finally be enabled for all third-party apps. It’s no longer a private API.
In your app’s Info.plist file, set the boolean value for
UIApplicationIsOpaque to NO.
And now the user’s wallpaper is visible inside your app.
It's not possible in iOS. While your app is running it does not mean that there is home screen behind your app.
However, If you do want to do it, there is a way that you make your app go in background, take screenshot and use that image as your background which will feel like home screen.
See this post. In this link, the accepted answer gives a way to take screenshot of home screen while your app is in background. But that's been achieved through a private API, which means your app probably will get rejected by App Store on time of submission.
In IOS SDK, is it possible to change the heading of the Top red status bar(Double high status bar) as referred in the following link.
We are implementing a Voip app and we would like to make that more meaningful than just say "Recording"...
Unfortunately, it's not possible to do this. The double-height status bar is only used for VoIP and audio recording, as well as Personal Hotspot connections.
However, it you're interested in putting custom text in the status bar, then there are many great solutions (the one that I use is https://github.com/myell0w/MTStatusBarOverlay). And the best part is, it's not in violation if Apple's policies! Many apps, including the Gmail app, use this and have been on the App Store for a long time.