views:

148

answers:

1

Hey, My simple iphone app is crashing on launch, it says "the application downloadText quit unexcpectedly i none of these windows that pop up when a mac app crashes and has a send to Apple button. My .h is below and i would greatly appreciate it if anyone could give me a hand as to what's wrong? thanks, Declan

`

#import "downloadTextViewController.h"

@implementation downloadTextViewController


// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
    NSString *myPath = [self saveFilePath];
    NSLog(myPath);
    BOOL fileExists = [[NSFileManager defaultManager] fileExistsAtPath:myPath];

    if (fileExists)
    {

        NSArray *values = [[NSArray alloc] initWithContentsOfFile:myPath];
        textView.text = [values objectAtIndex:0];
        [values release];
    }

    // notification
    UIApplication *myApp = [UIApplication sharedApplication];

    // add yourself to the dispatch table 
    [[NSNotificationCenter defaultCenter] addObserver:self 
                                             selector:@selector(applicationWillTerminate:) 
                                                 name:UIApplicationWillTerminateNotification 
                                               object:myApp];


    [super viewDidLoad];
}

- (IBAction)fetchData {

    /// Show activityIndicator / progressView

    NSURLRequest *downloadRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://simpsonatyapps.com/exampletext.txt"]
                                                     cachePolicy:NSURLRequestReloadIgnoringCacheData
                                                 timeoutInterval:1.0];


    NSURLConnection *downloadConnection = [[NSURLConnection alloc] initWithRequest:downloadRequest delegate:self];

    if (downloadConnection)
        downloadedData = [[NSMutableData data] retain];

    else {

        /// Error message

    }

}

- (void)connection:(NSURLConnection *)downloadConnection didReceiveData:(NSData *)data {

    [downloadedData appendData:data];

    NSString *file = [[NSString alloc] initWithData:downloadedData encoding:NSUTF8StringEncoding];

    textView.text = file;

    /// Remove activityIndicator / progressView
    [[UIApplication sharedApplication] setApplicationIconBadgeNumber:1];

}

- (NSString *) saveFilePath
{
    NSArray *pathArray =
    NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

    return [[pathArray objectAtIndex:0] stringByAppendingPathComponent:@"savedddata.plist"];

}

- (void)applicationWillTerminate:(UIApplication *)application {
    NSArray *values = [[NSArray alloc] initWithObjects:textView.text,nil];
    [values writeToFile:[self saveFilePath] atomically:YES];
    [values release];

}

- (void)didReceiveMemoryWarning {
    // Releases the view if it doesn't have a superview.
    [super didReceiveMemoryWarning];

    // Release any cached data, images, etc that aren't in use.
}

- (void)viewDidUnload {
    // Release any retained subviews of the main view.
    // e.g. self.myOutlet = nil;
}


- (void)dealloc {
    [super dealloc];
}

- (NSCachedURLResponse *)connection:(NSURLConnection *)connection willCacheResponse:(NSCachedURLResponse *)cachedResponse {
    return nil;
}


@end

`

A: 

Check the Console for exception reports. [Spotlight search for "Console" application if you're lazy. ;-] Any stack trace there to provide clues?

Run in the simulator in debug mode. Set a breakpoint at the start of viewDidLoad, plus anywhere in your code from any stack trace left in the Console.

Does putting the call to "[super viewDidLoad]" first (instead of last) help? If that's doing any work, it might be tripping up your viewDidLoad. Check the Console output first though -- I tend to make code changes only when I understand what's going wrong, or I can use it to rule out potential causes.

Joseph Beckenbach
thanks for the reply, the console comes up with:21/03/10 2:32:19 PM downloadText[3548] Stack: ( 8307803, 2474450491, 8466881, 2787944, 2786485, 25429108, 8210735, 25423659, 25431927, 24117515, 24111079, 24110797, 8337, 23594443, 23632310, 23620404, 23602815, 23629921, 134489, 8092544, 8088648, 23596565, 23633839, 8252)
declanjs