Приложение вылетает, когда в обзоре Apple, но не на локальной разработке - PullRequest
0 голосов
/ 05 апреля 2019

Приложение вылетает, когда команда Apple просматривает его, но не может воспроизвести сбой при разработке.

Я пробовал запускать его на всех возможных симуляторах, также пробовал Amazon AWS Device Farm и на двух разных реальныхустройства (iPad и iPhone).

Похоже, DateFormater не может проанализировать дату и возвращает ноль, до этого мы проанализировали некоторые другие поля, но без дат.

Мы думаем, чтоформат должен соответствовать указанному (мы можем проанализировать его на наших устройствах), и мы используем ту же учетную запись, что и команда проверки Apple.

Мы также пытались переключить Календари на негригорианский, что также не привело к сбою приложения..

Сбой приложения в строке self.modified = ...

Из Event.swift ...

import SwiftyJSON
...
  required init(json: JSON) {
    self.id = json["tm_event_id"].int!;
    self.name = json["name"].string!;
    self.eventStatus = EventStatus.init(rawValue: json["event_status"].string!)!;
    self.modified = AppDelegate.formaterDatetime.date(from: json["modified"].string!)!;
    self.dateFrom = AppDelegate.formaterDate.date(from: json["date_from"].string!)!;
...
  }

Из AppDelegate.swift ...

  static var formaterDatetime:DateFormatter {
    let f = DateFormatter();
    f.dateFormat = "yyyy-MM-dd HH:mm:ss";
    f.timeZone = dataTimeZone
    f.locale = Calendar.current.locale;
    return f;
  }

Ответ бэкэнда (на основе логов нашего сервера)

[
  {
    "tm_event_id": 1082,
    "company_id": 16,
    "organization_id": 58,
    "org_user_id": 126,
    "org_location_id": 93,
    "name": "My Test",
    "date_from": "2019-03-25",
    "date_to": "2019-03-30",
    "week_ending": "2019-03-31",
    "placement_count": 6,
    "notes": "",
    "event_status": "private",
    "created": "2019-03-04 13:25:25",
    "modified": "2019-03-04 13:25:25",
    "subrequirements": [ ... ],
    "timesheets": [ ... ]
  }

Журнал сбоев

Crashed: com.apple.root.user-initiated-qos
0  YouRecruit Work Tracker        0x1028b9470 specialized Event.init(json:) (Event.swift:224)
1  YouRecruit Work Tracker        0x10286424c specialized static StorableItem.initStatic(json:) (Event.swift)
2  YouRecruit Work Tracker        0x102844b20 closure #3 in _TempManAPI.().init() (<compiler-generated>)
3  YouRecruit Work Tracker        0x102844c4c specialized thunk for @escaping @callee_guaranteed (@guaranteed Entity<JSON>) -> (@owned [Event]?, @error @owned Error) (<compiler-generated>)
4  Siesta                         0x102e22a0c (Missing)
5  Siesta                         0x102e2250c (Missing)
6  Siesta                         0x102df4700 (Missing)
7  Siesta                         0x102df9c70 (Missing)
8  Siesta                         0x102df96fc (Missing)
9  Siesta                         0x102df163c (Missing)
10 Siesta                         0x102de9fbc (Missing)
11 libdispatch.dylib              0x222a44a38 _dispatch_call_block_and_release + 24
12 libdispatch.dylib              0x222a457d4 _dispatch_client_callout + 16
13 libdispatch.dylib              0x2229f6160 _dispatch_root_queue_drain + 680
14 libdispatch.dylib              0x2229f68d0 _dispatch_worker_thread2 + 128
15 libsystem_pthread.dylib        0x222c251b4 _pthread_wqthread + 464
16 libsystem_pthread.dylib        0x222c27cd4 start_wqthread + 4

Любая идея, как воспроизвести сбой на локальном dev или что может вызвать этоврезаться?

1 Ответ

0 голосов
/ 10 апреля 2019

Спасибо всем, переписав приложение, чтобы удалить все принудительные развёртки, исправил сбои

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...