Is it possible to record the things happening on an iPhone/iPad screen without Jailbreaking? - iphone

I would like to record the video of things happening in an iPhone/iPad screen. Here there is a change from usual applications available, that records device screen(view inside) from an application. I need to record things from the home screen of the device even the application(which records) is in background. Is it possible to implement?.
Also I wish to save this captured video to the iPad. (inside the application sandbox)

No. Even if you will find a way to do Apple will reject this app.

Related

Application which work in background only iPhone

I have requirement for an application which work in background only.
When first time application install on device then after installation that will be go to background. And after two minutes a view will popup on screen.
Now problem is that after installation how to redirect application into background?
i get answer for this that if we want to send our app into background then we have to open another app like as safari. so i get this solution.
Now problem is that how show a view after two minutes from background. I have to create as a demo not for app store. So if anyone have any solution then suggest me.
Thanks
It is not possible to do so in iOS. You can't send an app into the background
If you want your app to get displayed, the only way to do so is through push (from server) or local (from phone) notifications, and the user has to explicitly accept it.
Unfortunately, you can't make it open automatically.
iOS is not designed to run code in the background. There are a few exceptions, for example a music streaming app, or a GPS navigation app, but in general it cannot be done.
Instead, you should run your app on a server in the cloud, and send a push notification to the phone when you want something to happen on the phone. You may also be able to achieve this with "local notifications", depending on what you're trying to do.

Why does my iPhone App continue in the background?

I wrote my first iPhone App, and managed to get it into the App store. I later discovered a bug that happens on a real device but not on my emulator. I have committed a fix (changed plist to prevent app running in background), but I don't really understand why it happened.
My App allows users to record a sound-byte, however while they are recording they can use the iPhone home button to move the app to the background, and then it can keep recording forever if they don't restart the phone or the app does not crash.
My impression from everything I have read, is that this should not happen as you have to ask for background audio specifically if you want to do this, but now it appears to me that you have to ask specifically to disable it.
Could anyone explain this to me?
The iOS App lifecycle is described in Apple's iOS App Programming Guide.
The App is given the opportunity to save data and otherwise stop things that don't need to be running, before being suspended. You can request extra time doing this by using beginBackgroundTaskWithExpirationHandler:.
If you want your app to stop doing its "normal thing" when it is put into the background then you need to detect the App state transition and stop it yourself.

AppStore submission devices

We have in store an app which displays a series of videos through HTTP Live Streaming. Due to the nature of this videos, and the screensize of the iPhone/iPod device, we have decided to leave behind everything that does not have retina display.
The reason? Well, this videos are encoded in high resolution, and even that we have encoded them in lower resolution, those videos are still a bit pixelated. Since is is a paid app, we don't want to charge iPhone 3G/s users for an app they're not gonna enjoy at most.
The problem now is that we have decided to make the app universal, so iPad users can enjoy the app without that crappy upscaling from emulation. The problem goes like this.
In order to leave behind iPhone 3G/s users from buying the app, we have set as required the front facing camera, but we do not use it, of course. Why? front facing camera = retina display ;) . The problem is with the iPad. We can do the same with the iPad 2, but not with the iPad 1.
So the question is...is there anyway so we can submit the app to be available to everyone except iPhone 3G/s (or iPod)??
You can put constraints on the App in the store, informing of the need for retina display or whatever device capability it needs (i.e., Camera [not on old iPod Touch], GPS, etc.). It does lead to bad reviews, but you cannot stop idiots in the world from buying a product. There have been plenty of cases brought to court where the plantiff is suing a home owner for being injured while breaking in or robbing the house and they won...I mean really?...don't let users who don't have common sense deter you from putting out a product.
To drop the iPhone 3G, you could add the magnometer as a required capability.
That still doesn't take care of the 3GS though...
You can make your app Universal, while maintaining the requirements. You should check two things:
The device is an iPad/iPad 2?
If not, does it have a camera?
Merging these two tests you can determine if the app is running on an iPad (2) or on a retina-display-powered device. It will just require a couple of lines of code more. Eg. test for:
UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad

Opening one app from another app without closing the app

In the home page of my iphone app, there is a button added. When that button is clicked some other iphone app needs to be opened in a new viewcontroller (with out closing the parent app).There will be a back button on this view controller. When the back button is clicked, the new viewcontroller which is showing the another app needs to be closed and our parent app's home page needs to be shown.
Please give me some ideas on how to do this. I googled for this i didnt get any solutions.
Thanks,
Raja.
-- the following applies to iOS versions previous than 4.0 :)
Actually, there can be only one iPhone application running at once (with exceptions of Safari, Phone and some other system applications). The iPhone Human Interface Guidelines say so:
Only one iPhone application can run at a time, and third-party applications never run in the background. This means that when users switch to another application, answer the phone, or check their email, the application they were using quits.
However, if you only need to e.g. show a webpage, you can do it using UIWebView
Also, if you need to open another application, you should use URLs as pointed by Steve Harrison. This will, however, close your application. The recommended behavior in this case is to remember your application state and restore it when the application is run again, as Nithin writes.
According to apples documentation, they are not allowing any applications to be run in the background, except system generated ones. So you will be unable to do the thing you are going to implement. However, there is one thing that can make the same result.
You told that you are calling other application to run on a button click. Before initiating that application, save the current state of your application, may be using sqlite3 or core-data, and then open the other one. While returning back, load the pre-saved data from the database or wherever you have stored it. Every time you start the application, you check for the persisted data, if exists, load it or otherwise load your basic view
I don't think that you can run other iPhone apps within your own one. It doesn't make sense. You can open another iPhone app via a URL (see here and here), but this will close your app.
Like it has been stated: running two apps is not allowed by apple. You can however implement this apps features into you're app and have both get and save data to the same server...
Or like Nithin said: this functionality is available on JB iphones. Look into "backgrounder" for implementing one solution for normal users and one for thouse that has jailbroken.

How to render the iphone device screens on mac OS or in windows

We have an iphone device in our company and for the remote demo purpose I have to show some of the device specific features like voice call, accelerometer etc. (which is not possible on a iphone simulator), from a mac / windows system. Is there any way to render the device screens on mac /windows machine?
Advance Thanks,
Sathish
I have not tried this but there is a private API MPTVOutWindow which can be used. For details on how look at this blog post http://www.touchcentric.com/blog/archives/3
As this is a private API, it needs to be built into your app and it will never pass the app store submission process whilst it is in the app.
An easier way would be to set up a web cam overhead above the phone.
You can take a screenshot by pressing both hardware buttons simultaneously (power at the top and home at the bottom). You can then mail the images or sync to get them onto the computer. If you need to show the application in action, not just static screens, you could separate the assets and animate in Flash.
Apple does this with iPhones at their keynote speeches and at WWDC all the time. However, it seems that they have "special" iPhones; some presenters use the camera-over-the-iPhone approach and some have direct iPhone-to-video connections. Regardless, this is not currently possible on an iPhone that you haven't jailbroken. Your best bet is to simulate it.