How to detect an incoming call and start my app? [closed] - iphone

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions concerning problems with code you've written must describe the specific problem — and include valid code to reproduce it — in the question itself. See SSCCE.org for guidance.
Closed 9 years ago.
Improve this question
I want to develop an iPhone callerID application. I have following challenges to develop
How to detect incoming call?
Need to start my app when an incoming call occurs
Please help me out..I am new to iPhone development.
Thanks,
Srikanth

You can't do this. iOS apps cannot launch themselves without direct user interaction, and incoming calls suspend any apps that are already running.

I'm fairly certain this would be impossible in the iOS framework. Incoming calls suspend any active application and take priority over other operations. Further more even if you did manage the overwrite the iOS app lifecycle I think it is highly unlikely that Apple would approve the application because it attempts to replicate the functionality of the Phone app's caller ID. Apple doesn't like it when you try to replace their products (Ask Google Voice). They may have started to loosen up a little on this (See Opera browser and Skype apps) but I think this one would get flagged and rejected.

Short answer: you can't.
Apps are started when a user requests it, so you can't tell an app to start when a call comes in.
And an already running app is suspended when a call comes in. You can't pick up any detail about the call.

No. Simply you cannot do that. There is no public API is available to do that. Your app will be in sandbox environment and your app will be suspended when a call comes in. You cannot access them in anyway.

Related

Apple reject iPad app [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
We have developed an iPad application and submited it to the apple store for review after properly testing at our end. Apple rejected our app giving the following reason:-
We found that your app failed to launch on iPad running iOS 5.0.1, on
both Wi-Fi and cellular networks
We encountered the issue when selecting the application on the Home
screen - the app displayed a launch image then quit unexpectedly. This
may be because iOS 5 uses a watchdog timer for applications; if an
application takes too long to complete its initial startup, the
operating system terminates the application.
For information about the watchdog timer, please see Technical Q&A:
Application does not crash when launched from debugger but crashes
when launched by user..
Another possibility could be a missing entitlement. For more
information, please see the Technical Note: Resolving "0x800003A",
applications not launching and "missing entitlement".
We are not able to understand why Apple has rejected the app since we are not able to reproduce this issue at our end, and Apple's feedback is not very descriptive.
So what can we do to workaround this problem and resubmit it to apple store?
When Apple tested your app, they tried to launch it, and it never finished launching. If it takes too long to launch (5-10 seconds) it will be terminated by springboard and never finish. That's likely what happened. It's also possible that you had bad entitlements, but you probably would have run into that problem sooner.
Is there any chance you're doing synchronous network access on the main thread when your app is launched? This could easily cause this problem. If so, you should fix your app to never do synchronous network access on the main thread.
you need to remove all the synchronous UI/WEB update calls which blocks applicationDidFinishLaunching:
to return YES;
applicationDidFinishLaunching must return asap without blocking application thread for lets say - 1 second.
move your blocking code to a method and use performSelector afterDelay for that.

Do I need to test my app on instruments? [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
I finish building my app and I don't see any error on xCode 4.2! Do I need to test it on the Instruments before send it to appStore?
You don't NEED to test your app although it would be nice for your users, instruments will let you see the performance of your app and also whether or not you have memory leakages.
Give it a go if you can Instruments.
I strongly recommend you to test your app on a real device before submitting it to the Apple Store because in various situations (depending on the size and complexity of your app) there are some errors or warnings that don't appear on the simulator but do appear on the real device. An example on this is the Media Player (this post is an example).
Another important reason is that the simulator does not support all real device situations. For example you can not receive Text Messages (SMS) or incoming calls on the simulator, and it is important that you test your app for such situations (handle states of appWillResignActive, appDidBecomeActive...).
And as our friends noted above, it would be nice for you to see your app in the way your customers will see it before you sell it to them.
It's not mandatory, but I'd recommend it - particularly if you were an indie developer looking to start making your mark on the Appstore.
Any warnings that Xcode presents are also acceptable - but anything serious that occurs during runtime and through the things Apple will do to it during the submission process will be flagged to you; you'll even get a crash log. (again, as a rule of thumb I'd recommend clearing warnings where possible - and given any time restraints on the project)
Just remember that no matter how much testing Apple will do - their systems can and DO miss things, like specific configs or situations on iDevices that just happen. (just because iDevices are very less fragmented in comparison to say Android, things always occur!)
Hope this helps - good luck!
Also, you might find this useful:
http://www.raywenderlich.com/2696/how-to-debug-memory-leaks-with-xcode-and-instruments-tutorial
Instruments is for performance analysis and is not necessarily a "part" of your app building process. It would be nice for you to do some profiling for your app using this tool so that you, as the developer, give the best UX to the end user.

iPhone (iOS4): Can I get the phone number of a phone call read to an application (similar to Mr.Number)? [duplicate]

This question already has answers here:
Checking incoming call in iphone
(4 answers)
Closed 7 years ago.
If the application is running in the background, can it save the phone numbers of received calls using CoreTelephony (or similar library)? Is it possible to listen to the incoming call event and make a callback passing data to my application?
CTCallCenter.h seems to have a currentCalls property, but I can't find a description of it. Anybody know if it has phone numbers in it?
Application called "Mr.Number" seems to have a similar feature, but it's not available outside of the US so I can't get it to check the exact functionality.
This seems to be related to Checking incoming call in iphone
Currently no.
There are lots of problems:
CTCallCenter call tracking does NOT give you the phone number of the call.
Call tracking does not really work in the background (it works while you have a background task, but once that finish the app will not get any call CTCallCenter call-backs).
currentCalls is a list of all current calls at that point in time and no they don't give you the phone number.
I looked into "Mr.Number" application to see if it actually does support such features. It doesn't track phone calls at all. I found this quote from their blog:
While we’re on the subject, we get a
lot of questions about why our iPhone
app doesn’t have all the functionality
of our Android and BlackBerry
versions. We hear you. We’d love to
offer call blocking, true caller ID,
or at the very least the ability to
look up numbers from your recent calls
without having to copy and paste them
from your call log into Mr. Number.
Unfortunately, none of this is
possible on the iPhone today without
jailbreaking. When Apple gives us APIs
to do so, we promise to bring all the
features of our Android and BlackBerry
apps to iPhone

Is it possible to "register" an iPhone App Name? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 5 years ago.
Improve this question
I was wondering if It is possible to "register" an iPhone App Name before the app goes on the app store?
Example:
A developer comes up with a really clever name for a iphone game.
He wants to register the name before he programs the game so that no one else comes up with the same name.
Yes, you can, but only for a limited amount of time. When I tried it, the time period was 120 days, but this may have been changed to 90 days. EDIT: It seems that this is now 180 days, based on the comments below.
A developer can choose enter information about the application before uploading it, but Apple will remove the app and it's meta information if the name is not used within the grace period. You cannot use the name ever again after that.
I have, however, some apps that were rejected on the first review and were never re-submitted. It seems that those names are still available to me. Just don't submit a really lame first submission or Apple will know that you are "parking" the name.
Here's a screenshot of my email from Apple:
You can squat a name for something like 90 days per recent Apple iTunesConnect changes. If you do not upload a binary in that time, it will be deleted and you will be unable to use it again.
There exists a loophole I have found though I don't know how long it will stay open. It seems that uploading a binary, any binary, then immediately rejecting it will prevent you from deletion. I don't condone squatting, but sometimes, apps take longer than 90 days to develop.
If you have the money, not only submit the name in iTunes Connect, but register a trademark on the name. If you don't, than someone who does, and gets to market first with any other mobile platform game, might try to take the name from you, or involve you in legal wrangling in an attempt to do so.
You might also want to quietly snap up all the relevant domain names, if you can.
A developer can upload basic information about an app including the name before the binary is ready to be submitted. The developer needs to be set up in iTunes Connect and have an active Developer Agreement.

iPhone -- rejected for keyword [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 12 years ago.
Improve this question
I make an app which is a clone of a well-known game. I had the name of that game as a keyword in the first two versions of my app. Many competing apps also use the keyword.
I just updated my app. Apple said I couldn't have that keyword and took it out.
Meanwhile, a search on the name of the game brings up over 40 apps, most of them third-party apps which are not licensed. Now that the keyword has been removed, my app does not come up in the search, even though it is highly popular.
Is my best bet to:
a) Point out the discrepancy to Apple.
b) Try again in the next update
c) Give up.
d) Something else?
Apple's official policy changed a while back to disallow the use of competitor's products in your keywords. Have any of the other apps that use this keyword been updated recently? It's entirely possible that their use of the keyword dates to before this policy change.
If I were you, I'd go with "a) Point out the discrepancy to Apple" and probably ask them why they took it out to begin with.
If I were me, I would just ditch Apple and move on (Android, maybe even Windows Phone 7).
(a) and (c).
Using unlicensed trademarks as keywords seems to be a violation of the App store guidelines (but IANAL). If you point out those other apps to the review board, it probably won't help you directly, but there is some small chance that sometime if the far future when these other developers try to update their apps, the keyword will be disallowed for them also. But don't count on it.
Your being allowed that keyword originally is part of the luck of the game. Don't assume that a some amount of luck won't be involved with Android and Windows Phone (et.al.) App store revenues as well.