Приложение подвешивает на перезапуске с последним Шквалом SDK и ios4

У меня есть расстраивающая проблема с последней версией Шквала (Шквал iPhone SDK v2.5). Когда я запускаю свое приложение, быстро выхожу, затем перезапускаю Приложение, приложение кратко загружается, мерцания черный экран, затем остается на черном экране. Черный экран остается там, пока я не нажимаю кнопку "Домой", в которой точке я могу обычно перезапускать приложение. Я изучил это далее, и оказывается, что делегаты состояния приложения становятся позвонившими в неправильном порядке:

  1. applicationDidBecomeActive//приложение заканчивает загружаться в первый раз
  2. applicationWillResignActive//приложение начинает уходить в отставку
  3. applicationWillEnterForeground//На данном этапе я быстро перезапустил приложение, и это называют
  4. applicationDidEnterBackground//, Когда этого делегата звонят, экран, чернеет
  5. applicationDidEnterBackground//Это называют, когда я нажал кнопку "Домой" снова, после того, как экран завис некоторое время.

Таким образом, то, что я думаю, что это означает, является некоторыми процессами, берут немного дольше для оборачивания, после того как я нажал кнопку "Домой", и если я пытаюсь запустить приложение снова слишком быстро существует некоторое очень нечетное поведение. Если я ожидаю несколько секунд для перезапуска приложения, приложение обычно ведет себя.

Для демонстрации этой проблемы я создал самое простое приложение, о котором я мог думать, который я отправлю здесь. Я создал это с XCode 3.2.3 в этих 4,0 сборках непосредственно на мое устройство iPhone (iphone 4). Это важно, потому что я не мог воспроизвести эту проблему на средстве моделирования. Можно воспроизвести это приложение путем создания нового основанного на навигации проекта, названного simpleApp и отбрасывания этого кода в, с собственным ключом API Шквала, конечно. Вот simpleAppAppDelegate.m:

#import "simpleAppAppDelegate.h"
#import "RootViewController.h"
#import "FlurryAPI.h"


@implementation simpleAppAppDelegate

@synthesize window;
@synthesize navigationController;


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    
    [FlurryAPI startSession:@"<your api key here>"];    

    [window addSubview:navigationController.view];
    [window makeKeyAndVisible];

    return YES;
}


- (void)applicationWillResignActive:(UIApplication *)application {
    printf("applicationWillResignActive\n");
}


- (void)applicationDidEnterBackground:(UIApplication *)application {
    printf("applicationDidEnterBackground\n");
}


- (void)applicationWillEnterForeground:(UIApplication *)application {
    printf("applicationWillEnterForeground\n");
}


- (void)applicationDidBecomeActive:(UIApplication *)application {
    printf("applicationDidBecomeActive\n");
}


- (void)applicationWillTerminate:(UIApplication *)application {
    printf("applicationWillTerminate\n");
}

- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application {
}

- (void)dealloc {
    [navigationController release];
    [window release];
    [super dealloc];
}

@end

И вот simpleAppAppDelegate.h:

#import <UIKit/UIKit.h>

@interface simpleAppAppDelegate : NSObject <UIApplicationDelegate> {

    UIWindow *window;
    UINavigationController *navigationController;
}

@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet UINavigationController *navigationController;

@end

Так так или иначе, потому что столько приложений использует Шквал, я чувствую, что должен пропускать что-то очень простое. То, что действительно поражает, - то, что я не нашел никого при всей жалобе на эту конкретную проблему. Кроме того, это отличается от проблемы в предыдущих версиях, где приложение, казалось бы, сразу запустилось бы, почернело бы в течение нескольких секунд, затем возобновлялось бы обычно. Та проблема была решена путем вызова [FlurryAPI setSessionReportsOnCloseEnabled:false]; после того, как я установил сессию, но это не помогает в этом случае.

Так или иначе у кого-либо еще была эта проблема? Я действительно надеюсь, что это - просто глупая ошибка с моей стороны. Я действительно счастлив использовать Шквал, но что-то вроде этого заставило бы мое приложение быть отклоненным.

7
задан Rick 3 July 2010 в 08:36
поделиться

3 ответа

Я не уверен, следует ли мне отвечать на свой вопрос в комментарии к исходному сообщению или публиковать ответ, но в любом случае вот ответ:

Flurry не работает, это было подтверждено другими в этой ветке форума разработчиков Apple (для входа вам нужна учетная запись): https://devforums.apple.com/thread/56339?tstart=0

Надеюсь, Flurry скоро выпустит новую версию, я ' Мне бы очень хотелось включить их предложения в свое приложение.

2
ответ дан 6 December 2019 в 23:00
поделиться

Мы только что выпустили новую версию iPhone Flurry SDK, которая должна решить эту проблему. Загрузите этот новый SDK и сообщите нам, решит ли он проблему, с которой вы столкнулись.

- С уважением,

-Шейла

Flurry Support

1
ответ дан 6 December 2019 в 23:00
поделиться

Я написал Flurry об этом, и они очень быстро ответили мне, что рассмотрят этот вопрос. Примерно через неделю они ответили и сказали, что исправили это в версии 2.6, которая уже доступна. Я больше не могу воспроизвести эту проблему.

Не хочу сказать, что я крут или что-то в этом роде, но я как бы в одиночку исправил эту ошибку.

6
ответ дан 6 December 2019 в 23:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: