Tuesday, 26 December 2017

Edgesforextendedlayout scrollviewdidscroll


Eu pareço ter uma liberação exagerada acontecendo no meu aplicativo obj-C - recebendo mensagem de erro - versão do meu celular: mensagem enviada para a instância desalinhada 0x5633b0 Conheço a classe da instância do objeto causando o problema, mas essa classe é usada para criar Muitas instâncias. Meu pensamento é que eu poderia colocar algum registro no método de init da classe para registrar o que 0x5633b0 corresponde ao qual deve me ajudar a rastrear onde a instância está sendo criada. O que exatamente é o 0x5633b0 e há alguma maneira de obter acesso a esse valor no código para log-lo O que funcionou melhor para mim quando encontrei problemas semelhantes recentemente foi o seguinte: Under under Project-Edit Active Executable - guia Argumentos - A seção de variáveis ​​de ambiente adicionada e configurou para YES as seguintes variáveis: NSAutoreleaseFreedObjectCheckEnabled. NSZombieEnabled e NSDebugEnabled. No menu Executar, selecionei Ativar Guard Malloc. Com essas configurações, o depurador forneceu mais dicas sobre o que está errado com o meu código. (Eu encontrei estas dicas aqui) respondeu Mar 4 10 às 9:11 Ativar Guarda Malloc doesn39t trabalho ao depurar em um dispositivo, pelo menos eu posso 39t e esta publicação confirmá-lo: discussões. applethread1572993start0amptstart0 ndash JeroenEijkhof 21 de agosto 11 às 5:23 JeroenEijkhof is certo. Guarda malloc don39t trabalha no dispositivo. E eles podem ser ativados na guia 39diagnostice39, não é necessário configurar no env var. Mas NSAutoreleaseFreedObjectCheckEnabled pode precisar definir como env var. Ndash karim 3 de outubro 14 às 8:00 0x5633b0 é provavelmente o endereço do objeto desalocado (o valor de myobj). Você pode usar NSLog ou printf com p para imprimi-lo. Você também pode usar o perfil de instrumentos para encontrar o objeto desalocado. 1. Inicie o perfil: 2. Selecione os Zombis e inicie o perfil. 3. Clique no simulador até chegar ao seu caso de erro desalocado. Não está gerenciando sua memória corretamente. Você está chamando liberação automática de liberação em algum objeto mais do que o que você está chamando para reter. Verifique se você está seguindo todas as regras estabelecidas no Guia de Programação de Gerenciamento de Memória para Cacau. 0x5633b0 é apenas o endereço da localização de memória na qual o objeto está armazenado. Uma coisa que você pode tentar fazer é adicionar algum código ao método init: Se você tiver outros métodos de inicialização (por exemplo, initWithCoder. Que é chamado para objetos instanciados de um XIB), certifique-se de colocar também esse snippet nesses métodos. . Coloque um ponto de interrupção na linha NSLog e, em seguida, veja quando é atingido. Observe que ele pode ser atingido várias vezes, se um objeto é alocado nesse endereço, desalocado e, em seguida, outro objeto passa a ser reatribuído no mesmo endereço. O último hit antes do acidente é aquele que você deseja. Respondeu 02 de março de 09 às 2:24 Como você conhece o endereço do simbolo de antemão, é diferente de cada vez que você executa o código. Pelo menos aquilo que já notei. Usar algo como quotinfo symbol 0xabcdfgquot no console do depurador deu-me melhores resultados do que o seu probosal. ndash leviatã 18 jan 11 às 10:15 Sua Resposta 2017 Stack câmbio, IncLearn iPhone Application ltkeygtNSAppTransportSecurityltkeygt ltdictgt ltkeygtNSExceptionDomainsltkeygt ltdictgt ltkeygttest. testdomainltkeygt ltdictgt ltkeygtNSIncludesSubdomainsltkeygt lttruegt ltkeygtNSTemporaryExceptionRequiresForwardSecrecyltkeygt ltfalsegt ltdictgt NSString strURL google NSURL URL NSURL URLWithString: NSString stringWithFormat :, strUrl stringByAddingPercentEncodingWithAllowedCharacters: pedido NSCharacterSet URLQueryAllowedCharacterSet NSURLRequest NSURLRequest requestWithURL: URL NSURLSession sessão NSURLSession sharedSession NSURLSessionDataTask tarefa data de sessãoTaskWithRequest: request completionHandler: (NSData dados, NSURLResponse resposta, erro NSError) dict NSJSONSerialization JSONObjectWithData: data keyArray dict objectForKey: videos NSLog (resposta:, receitas) tblvw reloadData import ltFBSDKLoginKitFBSDKLoginKit. hgt import LtFBSDKCoreKitFBSDKCoreKit. hgt - (BOOL) aplicação: (UIAppli C) aplicação openURL: (NSURL) url sourceApplication: (NSString) fonteAplicação anotação: (id) retorno de anotação FBSDKApplicationDelegate aplicação sharedInstance: application openURL: url sourceApplication: sourceApplication anotação: anotação - (void) applicationDidBecomeActive: aplicativo (UIApplication) FBSDKAppEvents activateApp - ( BOOL): aplicação (UIApplication) didFinishLaunchingWithOptions: (NSDictionary) launchOptions return FBSDKApplicationDelegate aplicação sharedInstance: application didFinishLaunchingWithOptions: launchOptions - (IBAction) facebookLogin: (id) remetente FBSDKLoginManager login FBSDKLoginManager alloc init if (FBSDKAccessToken currentAccessToken) NSLog (Token está disponível. , FBSDKAccessToken currentAccessTokentokenString) self fetchUserInfo else login logInWithReadPermissions: email fromViewController: auto manipulador: (FBSDKLoginManagerLoginResult resultado, erro NSError) se (erro) NSLog (erro de processo de login) senão se (result. isCancelled) NSLog (Usuário cancelado login) else NSLog (Login Sucesso) se (result. grantedPermissions containsObject: email) NSLog (resultado é:, resultado) self fetchUserInfo else SVProgressHUD showErrorWithStatus: Erro de permissão de email do Facebook - (void) fetchUserInfo se (FBSDKAccessToken currentAccessToken) NSLog (Token está disponível., FBSDKGraphRequest alloc initWithGraphPath: (Conexão FBSDKGraphRequestConnection, resultado id, erro NSError) se (erro) NSLog (resultados:, resultado) NSString email resultado objectForKey: email NSString userId result objectForKey: id

No comments:

Post a Comment