Size: a a a

2021 January 31

РГ

Руслан Гриценко... in SwiftBook
Денис Мишин
все верно! спасибо Вам!
источник

ЕУ

Евгений Усков... in SwiftBook
ребят. Вопросик:

Есть CoreDataManager. в нем метод:
public func loadSources(sources mode: LoadMode, searchTerm: String? = nil, completionHandler: @escaping@escaping (([RssSource]?) -> ())) {

....

case .allSources:
                   sources =
try privateContext?.fetch(RssSource.fetchRequest())
               }
                   completionHandler(sources)

}}}

возвращаю данные в метод в Interactor'е через Кложур

public func loadSources() {
       storageManager?.loadSources(sources: .allSources, searchTerm:
nil, completionHandler: { (sources) in
           
if let sources = sources {
               
self.presenter?.presentData(with: sources)
           }
       })
   }


и тут при  возращении из метода storageManager?.loadSources()- вызове кложура с пустым массивом записей  из coredata вылезает ошибка.2021-01-31 11:04:03.016145+0700 RSSFeedApp[53508:3604674] Fatal error: Index out of range: file Swift/ContiguousArrayBuffer.swift, line 444
источник

ЕУ

Евгений Усков... in SwiftBook
кто-то может знает от чего появляется ошибка?
источник

A

Andrey in SwiftBook
Sergei Polyanskiy
что знакомое, не помню от куда...
Текст, Андрея Дороничева (директор по продуктам google)
источник

T

TologonKudaiberdi in SwiftBook
Евгений Усков
кто-то может знает от чего появляется ошибка?
Там же чётко написано "index out of range"
источник

ЕУ

Евгений Усков... in SwiftBook
так неоткуда ему взяться
источник

ЕУ

Евгений Усков... in SwiftBook
TologonKudaiberdi
Там же чётко написано "index out of range"
вылезает на этой строчке if let sources = sources {
источник

ЕУ

Евгений Усков... in SwiftBook
В этот момент там пустой Optional массив
источник

ЕУ

Евгений Усков... in SwiftBook
при этом приложение не падает. но в лог сыпет ошибку
источник

ЕУ

Евгений Усков... in SwiftBook
Все прошарися . разобрался
источник

ЕУ

Евгений Усков... in SwiftBook
Господа. есть один вопрос по DispatchGroup.

let feedFetchersGroup = DispatchGroup()
       
       
for url in urls {
           DispatchQueue.global(qos: .default).async(group: feedFetchersGroup) {


//...получаю ленту новостей с  разных url.
//... складываю ее в массив. потокобезопасно.(операции записи в массив на барьерах)
}
       
       feedFetchersGroup.notify(queue: DispatchQueue.main) {
           completion(feedItems, errorUrls)
       }


Почему метод notify вызывается до того момента как все потоки параллельной очереди в группе feedFetchersGroup завершили свою работу?
источник

R

Rami in SwiftBook
Доброго дня, господа! Как долго на данный момент проходят проверку приложение в сторе?
источник

A

Alexander in SwiftBook
Евгений Усков
Господа. есть один вопрос по DispatchGroup.

let feedFetchersGroup = DispatchGroup()
       
       
for url in urls {
           DispatchQueue.global(qos: .default).async(group: feedFetchersGroup) {


//...получаю ленту новостей с  разных url.
//... складываю ее в массив. потокобезопасно.(операции записи в массив на барьерах)
}
       
       feedFetchersGroup.notify(queue: DispatchQueue.main) {
           completion(feedItems, errorUrls)
       }


Почему метод notify вызывается до того момента как все потоки параллельной очереди в группе feedFetchersGroup завершили свою работу?
Скорее всего дело в асинхронной записи в массив с барьером, если так то, нужен вызывать ещё group.enter и group.leave() что бы уведомить группу что запись в массив закончилась
источник

ЕК

Евгений Квитник... in SwiftBook
Rami
Доброго дня, господа! Как долго на данный момент проходят проверку приложение в сторе?
1-2 дня примерно
источник

F

Fred in SwiftBook
Eugene Smolyakov
Что-то подобное это что из скриншота?
Ваши мысли не понятно
источник

M

Maxiм in SwiftBook
Виктор
Можно ли как-то решить задачу без циклов?)
//Даны натуральные числа a и b. Вычислите произведение a * b, используя в программе только операции +, -, ==, !=, =
источник

ES

Eugene Smolyakov in SwiftBook
Fred
Ваши мысли не понятно
Ну что именно из того скриншота нужно сделать?
источник

Д

Дмитрий in SwiftBook
Есть ли на свифте аналоги html unit?
источник

F

Fred in SwiftBook
Eugene Smolyakov
Ну что именно из того скриншота нужно сделать?
Если контур перехода от точки A к точке B показывает эту линию, я думаю, что следует использовать карту и ARKit.
источник

ES

Eugene Smolyakov in SwiftBook
Fred
Если контур перехода от точки A к точке B показывает эту линию, я думаю, что следует использовать карту и ARKit.
Так а в чем вопрос то, что непонятно?
Я знаю из какой статьи взят тот скриншот, там все подробно описано, что нужен граф точек по которому следует строить маршрут, для локализации лучше использовать какие либо метки
Карта здесь нужна кастомная, тк gps плохо работает внутри зданий
Все что нужно гуглится по «arkit indoor navigation»
источник