Рубрика «ios 8»

История написания этой статьи связана с изучением работы Popover в iOS 8 по материалам курса лекций стэнфордского университете «Разработка iOS 8 приложений на Swift. CS193P 2015 г.» В Лекции 7 профессор разбирает, как создать Popover в виде маленького «всплывающего» окошка как на iPad (что получается по умолчанию), так и на iPhone ( в методе делегата нужно сказать «НЕТ» адаптации).
Но в iOS 8.3 все нарушается:

  • на iPhone Popover окошки появляются ввиде модального окна на весь экран, с которого не знаешь как уйти,
  • а на iPhone 6 Plus в ландшафтном режиме (который должен работать как на iPad по умолчанию) вообще окно отображается модально как FormSheet, и с него также невозможно никуда уйти.

Попробуем разобраться в чем тут дело, и как это можно исправить.

Изменение адаптивности Popover в iOS 8.3 - 1
Читать полностью »

Ruckus, Devicescape и другие компании видят в возможностях звонков через Wi-Fi взятие следующего большого рубежа - 1

Попытки использовать Wi-Fi для совершения звонков среди беспроводных операторов постоянно продолжаются и это заставляет игроков на Wi-Fi рынке быть более активными чем раньше.Читать полностью »

image

В прошлой публикации я писала о том, что ожидаются Стэнфордские курсы cs193p 2015.
И вот они стартовали. Вернее в Стэнфорде они стартовали давно, 5 января 2015 года. Но только сейчас их выкладывают в iTunes Developing iOS 8 Apps with Swift
В первой же лекции Пол Хегэрти (Paul Hegarty) четко сказал, что в курсе будет использоваться только Swift. Стэнфорд окончательно переключился на Swift не только потому, что многие компании в Силиконовой долине проводят интервью с выпусниками на позиции разработчиков iOS приложений на Swift, но и потому, что с благословления Apple свободное распространение такого качественного контента c 1.2 миллионами скачиваний откроет для многих разработчиков по всему миру язык разработки iOS приложений Swift.
Для того, чтобы воспользоваться этим контентом, вам нужно иметь только Mac — Macbook Pro, MacBook Air, iMac. Все программное обеспечение — бесплатное.
Уже выложены 4 лекции и одно домашнее задание.
Если кто-то чувствует себя не совсем уверенно с английским или просто хотите почитать материал на русском языке, предлагаю свой неавторизованный конспект лекций на русском языке. Выложена Лекция 1 CS193P Winter 2015 — Логистика курса, обзор iOS 8. В ближайшее время будет выложены остальные.
Блестящие лекции профессора Пола Хегэрти (Paul Hegarty) будут полезны как начинающим, так и опытным программистам.
Читать полностью »

Это перевод статьи Tony DiPasquale «Efficient JSON in Swift with Functional Concepts».

Предисловие переводчика.

Передо мной была поставлена задача: закачать данные в формате JSON с Flickr.com о 100 топ местах, в которых сделаны фотографии на данный момент, в массив моделей:

//------ Массив моделей Places
struct Places {   
    var places : [Place]
}

//-----Модель Place
struct Place {

    let placeURL: NSURL
    let timeZone: String
    let photoCount : Int
    let content : String
    
}

Кроме чисто прагматической задачи, мне хотелось посмотреть как в Swift работает «вывод типа из контекста» (type Inference), какие возможности Swift в функциональном программировании, и я выбрала для парсинга JSON алгоритмы из статьи Tony DiPasquale «Efficient JSON in Swift with Functional Concepts and Generics», в которой он «протягивает» generic тип Result<A> для обработки ошибок по всей цепочке преобразований: от запроса в сеть до размещения данных в массив Моделей для последующего представления в UITableViewController.
Чтобы посмотреть как Swift работает «в связке» с Objective-C, для считывания данных с Flickr.com использовался Flickr API, представленный в курсе Стэнфордского Университета «Stanford CS 193P iOS 7», написанный на Objective-C.
В результате помимо небольшого расширения Моделей:

extension Place: JSONDecodable {
    static func create(placeURL: String)(timeZone: String)(photoCount: String)(content: String) -> Place {
        return Place(placeURL: toURL(placeURL), timeZone: timeZone, photoCount: photoCount.toInt() ?? 0, content: content)
    }
    static func decode(json: JSON) -> Place? {
        return _JSONParse(json) >>> { d in
            Place.create
                <^> d <| "place_url"
                <*> d <| "timezone"
                <*> d <| "photo_count"
                <*> d <| "_content"
        }
    }
}

extension Places: JSONDecodable { 
    static func create(places: [Place]) -> Places {
        return Places(places: places)
    }
    static func decode(json: JSON) -> Places? {
        return _JSONParse(json) >>> { d in
            Places.create
                <^> d <| "places" <| "place"
            
        }
    }
}

мне самостоятельно пришлось написать только три строчки кода:
Читать полностью »

Благодаря новой версии iOS пользователи могут устанавливать клавиатуры от сторонних разработчиков.

Согласно имеющейся информации, новая версия произвела такой ажиотаж, что в течении нескольких часов выпуска iOS 8 в App Store появилось несколько вариантов клавиатур, ближе всего с которыми знакомы пользователи Android.

В iOS 8 теперь можно использовать стороннюю клавиатуру

Читать полностью »

Айфоны и их взлом наскучили былым героям джейлбрейк-сцены. И это факт. Используя, как обычно, в качестве трибуны Twitter, один за другим авторы джейлбрейка предыдущих версий iOS в течение всего прошлого месяца, прошедшего после первого публичного релиза iOS 8, чуть-ли не зевая, рассказывали, что утилитой для взлома последней мобильной прошивки Apple никто из них толком не занимается.

Pangu выпустила джейлбрейк iOS 8.1 без Cydia

Сначала Pod2g из Evad3rs заявил, что ему смертельно надоел и джейлбрейк, и iPhone. Его поддержал pimskeks. Потом iH8sn0w заявил, что подготовка и выпуск джейлбрейка для новых версий iOS – слишком хлопотное и неблагодарное занятие, а другой их известный коллега по сцене p0sixninja передал свои наработки китайской команде хакеров Pangu.Читать полностью »

В операционной системе iOS 8 реализовано несколько нововведений, связанных с информационной безопасностью. Некоторые из них указаны в документе “iOS Security Guide September 2014”. По сравнению с февральской версией документа, появились новые разделы с описанием функции «Always-on VPN», поддержки S/MIME для электронной почты и автоматической смены MAC-адреса (для анонимизации). Кроме того, компания активировала двухфакторную аутентификацию для iCloud.

Но самое главное содержится на сайте Apple Privacy и в документе, предназначенном для правоохранительных органов “Legal Process Guidelines. U.S. Law Enforcement”.

Там сказано, что у компании теперь «отсутствует техническая возможность» передавать персональные данные по запросам правоохранительных органов.
Читать полностью »

Вчера в сети появился скриншот сетевой политики в iOS8.

iOS8 — Новая политика подключения к WiFi

На первый взгляд ничего интересного для обывателей. Но последняя строчка дает понять, что в iOS8 при сканировании WiFi сетей телефон будет генерировать случайные MAC адреса, тем самым не давая зацепок для так называемого «сетевого профиля» — когда ваше перемещение можно отследить по статистике переходов от точки к точке.

Читать полностью »

в 8:39, , рубрики: apple, beta testing, ios 8, ipad, метки:

Что делает студент после защиты диплома? Жизнь внезапно становится скучной, размеренной и не такой интересной. Чтобы добавить острых ощущений, я решил поставить на свой Айпад анонсированную несколько дней назад бета-версию Айос 8.

Перед тем, как устанавливать новую версию операционной системы, рекомендуется сначала сделать резервную копию старой с помощью iTunes. Тогда, в случае чего, можно будет эту копию развернуть на плашете. Просто так откатиться с восьмой версии обратно на седьмую нельзя. Чтобы установить Айос 8, нужно загрузить её образ с портала разработчиков, где во вкладке «iOS 8 beta» присутствует их огромное количество:

Щупаем iOS 8 beta

После загрузки образа, нужно открыть его с помощью iTunes (Cmd+Click или Ctrl+Click на винде по кнопке «Обновить»), и обновление начнётся само. Сам процесс занимает примерно 15-20 минут — после чего ваш планшет готов к работе.

Осторожно: под катом много картинок.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js