lock the iphone for limited amount of time - iphone

I am working on an application in which I want to set the password that locks the phone for a limited amount of time. While the password is set, the phone is locked except for sending or receiving phone calls to emergency numbers or user selected numbers in the application.
The phone is unlocked either when the time expires or when we enters the password.
My question is that is it possible ?

No. It's not possible on a vanilla iOS device. Maybe with a jailbreak.
May I ask why you want to create an app like that? The phone's lock works almost like that already?

Related

Get time between using the phone

I try to make an app which can assume the sleeping time of the user.
Samsung devices (samsung health) can assume the sleeping period based on yesterday last, and today first interaction. The app no needs to run into background. So I think, that it reads somehow from the relevant device data.
Is there any way to get the time when the user uses his/her phone in Swift?

Ask iPhone 4 to send back geotag information to server on the background

I wonder if it is possible for iPhone 4:
I have a server which sends queries about the location of the phone (irregularly) via an iPhone app. Customer can choose a setting that allow the phone to send back geotag information (longitude and lattitude) in the background (without customers doing anything).
If it is possible, how should I do it? If not, what is the closest alternative available?
Thank you.
Yes, you can do this. You have to set the UIBackgroundModes flag in your Info.plist to indicate that you execute in the background.
See: Information Property List Keys
Note that running the GPS from the background will severely impact battery life. In addition your application may be terminated at any time if the system needs the memory.

iPhone SDK : Is it possible to record the you talking time?

First ,this is my friends idea ,girls always use cell phone talk too much
every month they receive the billing will cost them a lot of money
they ask me is there any applications to calculate how long they dial out a month
or maybe can pop up a alert to notice them time is up,please hang up the phone
maybe 3 mins or 5 mins (some telecommunications provider offer free talk at first 3 mins )
So.......is it possible to use application to record your talking time and give you a notice ?
I'm just a new iphone programmer ,I have no idea about this ~
Even if this is impossible , still can share some information to me
It's help me to answer my friend
thanks :)
Using the wireless company's website would be the simplest way. If you really wanted a native iPhone app that would track time you could probably write one that utilized iOS's new multitasking abilities.
Essentially, the 10,000 foot view of the app would be something that a user would launch before making a phone call. When launched, they could start a timer (or delayed timer), move the app to the background (by tapping on the home button on a iDevice that supports background apps). The app's timer would continue to run in the background while the user makes their phone call.
I believe phone calls can be moved to the background as well, so users could go back to the app and check how much time they've been on the phone call.
Complicated, but doesn't require jail breaking. The implementation could be improved a ton, but that's the 1 minute, proof of concept, that you seemed to be looking for.

Keeping wifi/3g alive for locked iphone

I'm having trouble keeping wifi from disconnecting after 30 mins in an iphone app that needs to function when locked by the user.
The app normally does not sleep, but if the user so chooses they may lock the display. I'm adding a new feature to the app that sends data out over the network at 1 second intervals. prior to this there has been no network requirement for the app, and it has functioned as desired (music, timer-based processes) while user-locked.
The answer seemed to be here:
Wifi connection doesn't stay alive when asleep, with iOS4
But adding UIRequiresPersistentWifi boolean to info.plist doesn't keep it from timing out the wifi (i'm testing on Touch, iOS4.02) after 30 mins, even while the app is busy sending data out over the connetion. Maybe this only applies if the display sleeps itself, rather than user locks?
Related, I think there is no way to "stir" the display at any interval? User pressing the home button is sufficient to bring back the wifi; unlocking is not necessary.
Also, I've read on the interwebs that it was stated in a WWDC that UIRequiresPersistentWifi applies to keeping alive 3G as well. Can anyone verify?
thanks
Your app may be getting suspended by the OS after a long enough period of user inactivity.
Under iOS 4.x there are certain types of apps that aren't suspended when the display is locked (music player, VOIP, etc.) Apps that register as a VOIP type app might be allowed to keep a persistant network connection over a longer period. However Apple may require that an app actually provide some VOIP functionality in order to register for that type in any app submitted for review.
Is there some activity that you need to perform network activity? From iOS5 onwards, we have noted that even if we send network packets (heartbeat timers), then also iOS 5 blocks it after locking device.
It is to be noted that services which requires VoIP continue to receive calls, and notifications do come when your phone is on sleep mode or locked. This means that WiFi is not totally closed. I dont know how this happens.
As an alternative you can use data carrier of your network provider as an alternative to WiFi in case WiFi has gone down. With UIRequiresPersistentWiFi, you just inform iOS5 that you would require WiFi to run your application, nothing else signifies whether it keeps your screen ON or OFF. For keeping your phone from autolock you can however use disableTimer = YES flag, in lieu of your battery charge.

Can I tell if the iPhone has a passcode?

I'm developing an application that asks for a PIN when you start it. That's not great, but I can live with it. The problem is I'm being asked to ask for the PIN each time the phone wakes from sleep, too. Combined with the OS asking for its passcode, it's too much.
Is there any legitimate way to detect if the phone has a passcode required for waking, so I can skip requiring a PIN in this case? I don't want to know the PIN and I don't actually care if it was locked (for instance, if the phone was asleep very briefly), I just want to know that the data is in some way "protected."
For AppStore or not? If the former, no way.
In 3.x, the passcode is stored on the keychain, that means you have to get into the SpringBoard process to determine whether a passcode exists and nonempty. If you are in SpringBoard, calling -[SBAwayController isPasswordProtected] will determine if the device has passcode.
I created a very ugly workaround for this same issue.