СпонсорУвійтиПодати
Блог

Mac із сенсорним екраном виходять 6 листопада. Ось що я перевірив би у своєму застосунку для Mac

Від Justinas Rolando, розробника MacPip

Коротка відповідь

MacBook Pro з дисплеєм PROLED XDR це перший Mac із сенсорним екраном, він виходить 6 листопада. Apple каже, що macOS перетворює дотики на кліки, тож більшість застосунків уже працює. Щоб застосунок добре відчувався під пальцем, зробіть області натискання щонайменше 36 pt, замініть старе відстеження миші розпізнавачами жестів і перевірте все, що розташоване в рядку меню чи у верхній частині екрана.

28 жовтня Apple представила MacBook Pro з дисплеєм PROLED XDR, і це перший Mac, якого можна торкнутися. Він надійде в продаж пʼятниця, 6 листопада. Я роблю невеликі застосунки для Mac, тому моє перше запитання було не «чи хочу я такий». Воно було: «що станеться з моїми застосунками, коли їх торкнуться пальцем?»

Ось що я знайшов і що збираюся перевірити у своїх застосунках цього тижня.

Що змінилося

Тож питання не в тому, чи працюватиме застосунок. А в тому, чи здаватиметься він зламаним під пальцем. Клік по кнопці в 16 pt нормальний на трекпаді й дратує великим пальцем.

Що Apple радить розробникам

Apple виклала сторінку Get ready for Touch on Mac із трьома відео. Найпрактичніше з них, Bring Touch to your Mac app. Його приклади коду кажуть, коротко:

  1. Збільште області натискання щонайменше до 36 pt по кожній осі, коли введення сенсорне. Для миші нічого не змінюється.
  2. Перейдіть від саморобного відстеження миші до розпізнавачів жестів. Якщо у вас є цикл mouseDown, що читає події перетягування, приклад замінює його на NSPanGestureRecognizer з allowedTouchTypes, рівним .direct.
  3. Вирішіть, що робить один палець у прокручуваних областях. На полотні, де один палець має малювати, приклад задає для minimumNumberOfTouchesForScrolling значення 2.
  4. Вимикайте системні жести лише там, де вони заважають, за допомогою disablesDirectTouchSystemGestures у вікна або directTouchSystemGesturesDisabled() у SwiftUI.
  5. Повідомте, що застосунок розрахований на дотики, за допомогою ключа NSIsTouchNative в Info.plist.

Є також Design for Touch on Mac та Bring Live Activities to Mac. Apple проводить дві онлайн-лабораторії для груп з інженерами та дизайнерами: 18 листопада з 9 до 10 ранку за тихоокеанським часом і 19 листопада з 6 до 7 вечора за тихоокеанським часом. Бета Xcode 27.3, що йде в комплекті, усе ще була позначена «Незабаром», коли я дивився 3 листопада.

Що я перевірив би у своєму застосунку, по порядку

Це мої думки, а не список Apple.

  1. Знайдіть найменші елементи керування. Значки панелі інструментів, маленька шестерня, кнопка закриття на власній панелі, прапорці в тісному вікні налаштувань. Усе, що менше за 36 pt у будь-який бік, виправляйте першим.
  2. Знайдіть те, що з'являється лише при наведенні. Палець не наводиться. Якщо кнопка видалення або підказка з'являється, лише коли вказівник над рядком, користувач із сенсорним екраном може її не знайти. Дайте їй інший шлях.
  3. Спробуйте кожне перетягування. Зміна порядку в списках, витягування файлів із вікна, зміна розміру розділеного вигляду. Саме там зазвичай живе саморобний код для миші, тому там найчастіше щось відчувається не так.
  4. Перевірте, що ховає правий клік. Якщо дія є лише в контекстному меню, зробіть до неї і видимий шлях.
  5. Якщо ваш застосунок живе у верхній частині екрана, перевірте його там. Застосунки в рядку меню та біля вирізу мають нового сусіда, Dynamic Island, і новий спосіб натискання. Якщо ви робите один із застосунків у рядку меню на MacPip або щось біля вирізу, саме час глянути.
  6. Погляньте, як користується хтось інший. Дайте Mac людині, яка ніколи не бачила ваш застосунок, і нічого не кажіть. Десять хвилин такого розкажуть більше, ніж будь-який список на кшталт цього.

Якщо у вас немає такого Mac, більшу частину списку все одно можна виконати. Кроки 1, 2 і 4 це уважний огляд власних вікон, а приклад коду збирається з новим SDK, щойно вийде бета Xcode 27.3.

Чи варто поспішати?

Не думаю. Apple каже, що дотики перетворюються на кліки, це дорогі ноутбуки Pro, і спершу вони надійдуть невеликій групі. Більші області натискання й менше дій лише при наведенні допомагають і тим, хто користується трекпадом, засобами доступності чи великим зовнішнім екраном, тож робота не пропаде, навіть якщо Mac із дотиками залишаться нішевими.

Я б зробив дешеві виправлення зараз, щоб перший, хто торкнеться вашого застосунку в п'ятницю, лишився задоволений, і записав, що ви змінили.

Поки ви тестуєте

Новий Mac також гарна нагода перевірити нудні речі. Ваша збірка універсальна чи лише для Apple silicon, і чи каже про це ваш сайт? Apple повідомляє, що загальна підтримка Rosetta 2 для застосунків закінчиться після macOS 27, як писав MacRumors, тож застосунок лише для Intel має обмежений термін. Нова перевірка універсального бінарного файлу читає вивід lipo або file і каже, на чому працює кожна частина. У чеклісті запуску по порядку зібрано решту нудних справ, а як надіслати застосунок для Mac описує шлях через магазин і пряме розповсюдження, якщо ви випускаєте оновлення.

Якщо ви випускаєте оновлення з підтримкою дотиків, скажіть про це в нотатках до випуску й оновіть опис своєї картки, щоб ті, хто шукає застосунки для дотиків, могли вас знайти. А якщо вашого застосунку ще немає на MacPip, додати його можна безкоштовно.

Джерела

Читайте далі

Подайте свій застосунокБезкоштовні інструменти для розробників