I have had some strange, hard to reproduce crashes, when testing my app with an ad-hoc version on my iPhone. The crashes happened after changing from my app to the dashboard (or other app) and then changing back to the app again.
Is there a way to use UIAutomation in a way to perform these changes automatically?
Thanks in advance.
Okay, I found an answer. Apple provided this line in the documentation
UIATarget.localTarget().deactivateAppForDuration(10);
This single line of code causes the application to be deactivated for 10 seconds, just as if a user had exited the application and returned to it ten seconds later.
Related
I try lots and lots and searching most of posts, all with same answers. But I have take all the things included which is needed to use location service. My application properly get location and called didUpdateToLocatioon in simulator 5.1. But when I try same code with simulator 4.3, it gives me "server did not accept client registration 68". And when I try to debug the same code with my device with OS 4.3.5, it always go into didFailWithError.Can anyone have the same issue I had since last 2 days. And now I'm really frustrating with same answer from all around which I already did.
It's just fault of device, with some issue I just switched off the device and now when I run my app in it, without a line of code change. It works fine.
After 3 day just wasting my time to posting and searching all.
So, my suggetion is if anyone who have the same issue like when u try to find location and it go into "didFailWithError".
Just restrart your device.
Our latest app was rejected by giving following reason
"when the user launches the app, a blank black screen is produced"
We had tested this many times and did not notice this issue. We tested again now, but it is working properly for us.
Can someone help us to find out the issue?
I don't think anyone can help you find this issue, My suggestion would be to follow up with the Review Team and try to obtain as much information as you can from them. Such as, what device was it tested on, what OS version and so forth.
Ah, the many woes of the app store process.
Make sure that you have tested your app not only on the simulator but also on a physical device.
Secondly the issue might be that you have made some (false) assumptions about the data on the device, that you might have put there manually, but isn't handled when installing anew.
Therefore a plan of attack might be to remove the application complete from both device and simulator and try running them from a fresh install rather than on top of an already installed installation.
Best of luck!
Try to build and install your app from a clean state. You may not be seeing the same as the reviewer, because if you only "build&run" all the time, old files, which are not part of the final build, are still present on your device or in the simulator.
So clean the build folder, remove the app from your device, and try again. Also, check if you app can live without an internet connection.
Your best bet is to discuss this directly with the Apple guys (Resolution Center).
I have an iPhone app that I'm trying to run on my phone via Xcode.
It installs and runs without an issue
I make a change in the source code (negligible, like an NSLog())
It installs without an issue
Running causes the error:
Error Starting Executable 'myApp'
Don't know how to run. Try "help target".
I uninstall the app, and reboot the phone
It installs and runs without an issue (until I make another change; then I have to repeat this dance)
Needless to say, having to uninstall the app, reboot the phone, and reinitialize the environment (i.e. set prefs) takes an unreasonable amount of time, and is probably indicative of a serious problem. The issue is, the only vague error message I receive gets me nowhere on Google. Where on earth could this issue be coming from?
With some help from #iphonedev, I figured it out. Turns out it's a glitch in iOS 5 beta. The way to fix it is to remove the device from Development Devices, then re-add it.
Yeah just restarting the iPhone with the lock and home buttons fixes this. Had it happen a few times to me
It's hard to describe my iPhone's situation..
I launched an App and used it. for example, a Twitter app.
After that I closed it with Home Button.
Then I launched a few apps which were enough to take most memory.
And, when I launch the Twitter app again, a screenshot(snapshot), which was taken exactly when I closed the app at first, was shown about 0.5~1 sec.
I know this is a way of animation effect, but mine is somewhat wrong,
because that screenshot should be 'loading image (ex: Default.png)' if the app launched long time ago is about to start from the beginning (the 'twitter' app must be closed because of out of memory).
It makes stressful situation when I use kind of 'personal memo app'.
Before I upgrade to iOS 4.3.3, whenever I launch this app, it requires password without showing any old screenshot.
But now, everyone can see my memo because of that automatic snapshot which pops up about a second.
Help needed. Thanks!
Before your app goes into background you need to hide/remove all the views you don't want to appear when you open the app again.
You should do this in the applicationDidEnterBackground: UIApplicationDelegate method.
See the Remove sensitive information from views before moving to the background bullet point in this section of the Apple Developer Docs.
The only way I know to prevent that is to set "Application does not run in background" in your plist file.
After submitting our application several times, we continue to receive the following response:
Thank you for submitting My App to the
App Store. We've reviewed your
application and determined that we
cannot post this version of your iPad
application to the App Store because
My App is crashing on iPad running
iPhone OS 3.2 and Mac OS X 10.6.2. My
App crashes upon launch.
Unfortunately, crash logs have not
been generated.
However, resigning the same build with the AdHoc entitlements and loading the build onto the device yields no such crash. After a number of attempts, the application simply does not crash as reported by the reviewer. Furthermore, the reviewer does not provide any useful logging that may have been generated by SpringBoard such as an exit status or event if it had worked properly for any other device. There are no calls to explicitly exit or quit the application in the code line and yet the application terminates on startup.
What might cause an application to terminate in such a manner?
Under what conditions is an application tested that might not be found under a development environment?
Could it be a result of a signing issue that the submission validation system is simply unable to catch?
Thanks in advance.
After fighting with this for weeks, the application has finally been approved. The key: signing corruption. Hence why the application would start (or at least appear to start by showing the splash screen) and then suddenly vanish without a crash log. It failed Springboard's preflight sighing check.
A good tool to keep in mind to check for signing issues. It tells if the application has a valid signing:
codesign -vvvv MyApp.app
When I built the application, I would cp it to a network storage device where our product manager would pull it down and submit it to Apple. If decompressed on the NAS, the code signing was valid. But if you coped the compressed application back off the NAS and validate it, it would fail.
The lesson: make use of the new XCode utility to submit applications.
A few suggestions:
Try to use the leaks tool of the static analyzer to see if there are any memory leaks or problems your not seeing.
Does your app use a web service? This happened to me one time because the day Apple was reviewing the app the web service went down. That cause a crash. If thats the case you would want to add something to catch that.
Finally, In the logs Apple sent you did they send you the dsym file? If they did you can run atos from the command line and it will convert the address to symbols. That will show you what thread and symbol it's crashing on.
Be sure you test with a variety of settings: with Wifi disabled/enabled, with 3G disabled, Airplane mode on/off, location services disabled, etc.
As a last resort, assume there is a problem in your code that executes at startup. Remove half your startup code, set your release date in the far future (just in case it gets approved), then resubmit and see if they have the same problem. If not the problem is in the half you removed... it's a binary search.
I think you have two options: try harder to reproduce the defect using the tools other people are mentioning or to catch those crashes in the field.
PLCrashReporter will trap on an uncaught exception and store all relevant information. Next time your app is run, it can send the crash report that you can then symbolificate and view a stack trace of.
Ouch! That's a tough one. I've had this kind of thing happen before, but it seemed it was reproduce-able when I switched to a different device (iPhone 3G vs 3Gs, etc.). In your case though, it sounds like you're iPad only, so that might not help. There's a difference between 3G and Wifi, I suppose, but I would be really surprised if that was causing a crash on one and not the other.
One thing you could try if you think Apple's not doing their part is to change the binary name and re-submit it under another app name/record. See if you get the same response. If you get the same reviewer, you might, but I think there's a good chance you would get a different reviewer with a new app. Just set your app release date to some time in the distant future and it will never actually show up in the app store if they approve it. If the new app comes back rejected for the same reason, you've got work to do, but if they do in fact approve it, then I would get on the phone with them and point out the discrepancy.
My approach would be to make sure that the compilation is absolutely clean both in the static analyzer (this is NOT optional, it will save you time!) and for the build itself. Then set everything as described on CocoaDev' NSZombie page. Then make sure you have an iPod running 3.2 (actual hardware, not simulator) and test, test, test. Do it with network available and not available, with the device nearly full and freshly restored, every other variation you can think of. Run it with the debugger active and as a release build disconnected. Use Leaks, Instruments and all the other tools to peek in there and get a better feel for what is happening. If you exhaust every possibility you are going to have to beg for more detail from Apple but I bet you find a problem - one of the most important things in debugging an issue like this is to try to forget everything you think you know for sure and start at the beginning.