2015-07-13 8 views
6

Mam 2 projekty współpracujące z Google Maps SDK, są one obecnie w Appstore.EXC_BAD_ACCESS Korzystanie z systemu plików gmd sdk 1.9.0, Xcode 6.4, działającego na urządzeniu 8.3

miejsca mieć na uwadze:

  • GMaps SDK w wersji 1.9.0 zainstalowany poprzez cocoapods
  • wersja Xcode 6.4
  • docelowych Deployment 7.1
  • urządzenia: iPhone 4s z 8.3.0

Dzisiaj otworzyłem Xcode jak zwykle z pierwszym projektem, próbowałem skompilować i debugować na iPhonie i czasami dostaję EXC_BAD_ACCESS (code=1...) krach na aplikacji i kiedyś dostać EXC_BAD_ACCESS (code=EXC_ARM_DA_ALING...), nie ma śladu stosu tutaj, ale zawsze na main.m:

return UIApplicationMain(argc, argv, nil, NSStringFromClass([TGPAppDelegate class])); 

Seeing pierwszy wątek odkryłem, że jest to błąd jest związany z Google Maps:

Thread 1

próbowałem następujące:

  • Aktualizacja kapsułę (nie działa)
  • Zastąpiony mój kod z przykładowego kodu na GMaps SDK stronę (nie działa) *
  • I have read coś o układzie auto, wyłączona (nie działa)

Dziwne jest to, że ja też:

  • Próbowano w iPhone 6 8,4 (nie działa)
  • Próbowano w iPhone 6 8,3 (nie działa)

Oba projekty są we wczesnym stadium beta, więc nie wiem, czy prawdziwy użytkownik ma ten problem, ale obawiam się, że niektórzy użytkownicy nie będą mogli korzystać z aplikacji z tego powodu.

Nie mogłem znaleźć zbyt wielu informacji w Internecie i nie wiem nawet, gdzie szukać, czy jest jakiś zgłoszony błąd w tej sprawie? Czy ktoś z tym samym problemem?

Oto przykładowy kod używam:

-(void)viewDidLoad { 
    [super viewDidLoad]; 

    GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:37.80948 
                  longitude:5.965699 
                   zoom:2]; 

    GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera]; 

    self.view = mapView; 
} 

EDIT 1:

Robi więcej testów, okazało się, że problem pojawia się tylko podczas debugowania (dołączenie debuggera podczas uruchamiania aplikacji) , jeśli uruchamiasz aplikację z iPhone'a, a potem załączasz debuggera do procesu, wszystko działa dobrze, to znaczy, jeśli mapa spróbuje wyrenderować, gdy debugger jest podłączony, to dostaniesz exc_bad_access, to jest błąd debuggera ?Jestem zdezorientowany

EDIT 2:

Ten w odpowiedzi in here dzięki Dave

+1

Przeżyć to samo tutaj. To denerwujące. Po prostu nagle nie będzie działać 8.3 – Teffi

+1

Okazało się, że dzieje się to tylko w profilu tworzenia oprogramowania. Ale po spakowaniu go do dystrybucji, błąd nie występuje. – Teffi

+0

Wykonując więcej testów, okazało się, że problem pojawia się tylko podczas debugowania (dołączanie debuggera podczas uruchamiania aplikacji), jeśli uruchamiasz aplikację z iPhone'a, a potem załączasz debuggera do procesu, wszystko działa dobrze, mam na myśli, jeśli mapa próbuje renderować po podłączeniu debuggera, to dostaniesz exc_bad_access, to jest błąd debuggera wtedy ?, jestem zdezorientowany. – Fantini

Odpowiedz

9

Odpowiedź na to pytanie nie jest moje, to w odpowiedział in here dzięki Dave, jestem po prostu cytowanie go więc każdy może zobaczyć odpowiedź.

znalazłem źródło problemu i mają rozwiązania:

Problem wydaje się być wywołane przez OpenGL ES kadrowania w Xcode; Zgaduję, że problem ten zaczął się, gdy Apple dodał metal do miksu jako kodu XCode 6.4/iOS 8.3, co może w jakiś sposób negatywnie wpłynąć na cały system debugowania przechwytywania obrazu w formacie .

Obejście: EDIT: znalazłem źródło problemu i mają rozwiązania:

Problem wydaje się być wywołane przez OpenGL ES kadrowania w Xcode; Zgaduję, że problem ten zaczął się, gdy Apple dodał metal do miksu jako kodu XCode 6.4/iOS 8.3, co może w jakiś sposób negatywnie wpłynąć na cały system debugowania przechwytywania obrazu w formacie .

Obejście:

  1. w Xcode, przejdź do produktu> Schemat> Edytuj Schemat ...
  2. Wybierz "Uruchom" kartę po lewej stronie.
  3. Wybierz zakładkę "Opcje" u góry.
  4. Zmiana "Przechwytywanie klatek GPU" z "Automatycznie włączone" lub "OpenGL ES" na "Metal" lub "Wyłączone".

To wyłącza przechwytywanie klatek OpenGL ES, co nie jest wspaniałe, ale pozwala ci kontynuować debugowanie twoich kompilacji.

Nie jestem pewien, czy ten problem dotyczy Apple'a czy Google'a, ale będę wysyłać zgłoszenia o błędach do obu. Szczęśliwe kodowanie!

+0

to działało jak czar .. thnks .. ale czy są inne problemy, które możemy napotkać zmieniając tę ​​konfigurację? Nie wpłynie to na inny kod? –

+0

Naprawdę nie znam i nie odpowiadam na to pytanie, z mojego doświadczenia wynika, że ​​aplikacja działa dobrze, ale nie wiem, czy jest jakiś problem z wydajnością, czy też będzie w przyszłości. – Fantini

+0

Uderz w problem z iOS 11.0 i SceneKit w kilku projektach –

0

miałem dokładnie ten sam problem:

iPhone 4 -> iOS 7 (pracy)

Symulator xcode (działa)

iphone 5s -> iOs 8.3 (NIE działa EXC_BAD_ACCESS)

ROZWIĄZANIE: zaktualizowałem swój iPhone do wersji 8.4. I problem zniknął, trwa ładowanie map.

nadzieję, że pomoże

+1

Dziękuję za odpowiedź, ale to nie jest to, czego szukam, a jeśli użytkownik nie załaduje aplikacji na urządzeniu z tą samą konfiguracją, nie będzie mógł uruchomić aplikacji, muszę rozwiązać ten błąd. – Fantini

Powiązane problemy