2012-04-23 129 views
0

我的代碼不能在設備上工作,任何人都可以請幫忙..?在Appcelerator模塊中,ENSURE_UI_THREAD在設備上崩潰

- (id) TweetPost : (id) args { 
    NSArray *arr = args; 
    _post = [args objectAtIndex: 0]; 
    NSLog(_post, nil); 
    [_post retain]; 
    ENSURE_UI_THREAD(Tweet, args); 
} 

- (id) Tweet : (id) args { 
     NSLog(@"Routine Twitter Module", nil) 
     if (![_engine isAuthorized]) { 
      UIViewController *controller = [SA_OAuthTwitterController controllerToEnterCredentialsWithTwitterEngine:_engine delegate:self]; 
      if (controller) { 
       [[TiApp app] showModalController:controller animated: YES]; 
      } 
     } else { 
      [_engine sendUpdate: _post]; 
     } 
} 

在執行這段代碼,模擬器上,它工作正常,但在設備上NSLog(_post, nil);後的應用程序崩潰,立即在TweetPost方法。我認爲這是由於ENSURE_UI_THREAD(Tweet, args);。誰能幫我嗎..?

回答

0

我已經替換爲上述兩個功能:

- (void) TweetPost : (id) args { 
    NSArray *arr = args; 
    _post = [arr objectAtIndex: 0]; 
    [_post retain]; 
    NSLog(_post, nil); 

    [self Tweet: args]; 
} 

- (void) Tweet : (id) args { 
    NSLog(@"Routine Twitter Module", nil); 
    ENSURE_UI_THREAD(Tweet, args); 
    if (![_engine isAuthorized]) { 
     UIViewController *controller = [SA_OAuthTwitterController controllerToEnterCredentialsWithTwitterEngine:_engine delegate:self]; 
     if (controller) { 
      [[TiApp app] showModalController:controller animated: YES]; 
     } 
    } else { 
     [_engine sendUpdate: _post]; 
    } 
} 

,這是工作的罰款。我不知道錯誤是什麼。

相關問題