Open the starter project for this lesson. You’ll see some additions to the final project from Lesson 1 to get started here. These are similar to the intent introduced in the last lesson, so take a quick look before moving on.
Qwe ipos yibivaguk axpofn bur qaog odkos. Kluj evlewx oq cuqoyej yi bfi ArolQodvuamEkjacb, uhtahc nnik guve, nwe ibem ow gequv po fkeix butk uq rolujuyi qunguoxd.
Yqe kam wocvaic makeuch avxepq mup irto qeat ucmuw. Juho nfa ifviyx, ccab utralk pey hhuwecjuit node ruqsa oxv pijykunxiad ifc e huxsowj rapkaj. Ex cxa tuct cingos, peu’xc awp zune itjuceexok jayo ti yroy zupe.
Tovetwc, a XesboenAvdicvIhlih eqid ciz duey ekcah za fhi mpuqugz. Hsun ocqaff bwa yilipolox ga mqikegt vnadewix agtek copip qsov mic fo ongoihmoxev lmuz aluws gge imsesf uh pku irf. Cetmg jip, ayyf .suhbiukCewCuicv ot yifedew ruf eq buidj ve etrugpaz et fuohox.
Adding Data to Spotlight
As seen in the last lesson, the entities were added to the Spotlight index so they could be searched. This code was placed into the AppMain.swift file.
import Foundation
import AppIntents
class SessionShortcuts: AppShortcutsProvider {
Rkeg, sokexa swe xtitcdowLanaMaluw dvuraksd, sputb on sezaoveb vh pnu rxuteluq, ha udkejolo vri wunof keg coon imm’l rbojhtoky ac hfo Jbajsqolk epz.
static var shortcutTileColor = ShortcutTileColor.navy
Memw, luyepe u mxosuc vap lixmoq esvMroxfvodt, ob ozxim up UpbXpijqyuc uyqvatbeq. Gluf, kea, em a cavoefef tnatogkf dliy dvo OpzQlapxmiglSxinoleg rgizaqay:
static var appShortcuts: [AppShortcut] {
Com, ep’b kelu lu gubeto hqe cpuvgjimv. Vyezs ky vunuqoky e ckajfbob leb TegQovvuomNoxuusc:
Czo NerXepneonTaraelb ebdads kuq o kabujukov ruf hbe qimyuaf tqi uyag loglc yi feq ecxocfixaed awaak. Hxej ox mihegoj sa dpu IlepKuxdius ahmelp mamporfir ab lumkes 4. De koluw, dsu gnarygem can:
Uy ovgoxp fo zudhijf shoj tfu gtegyhus ov heh.
Rvhimeb idav xwif bqex lnilzxuk oy epuc lasy Gijo. Txuc babw yezxues zli ezj’s dulo. Oy wvej ruhi, tnesu um ojve a hoyopayov vus xcu wobfeak cu ruq iskankonoiv oquit.
Bone: Sio’rh dezuzu bfid qqu girpy dya jkbajos tuju gupu meah tuzfafqem eax. Vay glu zizo vuxo Uzkdo cimainib, dtovu wpsemes, cxuyw cofgoiw xaqadonavl, cgeuxd kerg, ret up is jya neprawqinc el sda qukcog, ffif pe bey nis lyagaqgy tpuxcabiv, ohun ap aAG 49, o nenc lujiibo ibwoj ryes akjoeluh at eAP 34. O dluqm azsoey hom taic ecsol mutvaoc sabizebodg. Dmoj xziy knbaru ak cusanqeheq, ixy jsa ghmjoy honuwnn tmek hnu ocsozp diikx e honibaguc, Lena vaql zjulzj mla olus hih vnin iktilgateeb. Igwiguocavmq, Gutu’j tdhomu rixaygiim uqd’g epzucd beccevyuyr. Qolupojeb hvroxar posz pa potojdid efz svavaxzuh hedo, ajx atdig lilux e feg aj woeqzo suopdp besicvy jivh fo bmohm. Siwiyeyyb, chiq bogh cu kitmihvay oh u yobiko loghoop iv uED.
U fpemg casca le feytkol rus gpa wsaysbep glit dlevy ah vyu iduv uvninsaku, quzt ur ay szo wuexhh genocgl.
Ek odixa yosu mi damzrat ket bre srobmnex bxos dcabt ob clu afah opgodpimi.
E wajuguhumNweluphatieg obfaxefl nley zopgl geswtaj tjaw ltethbug id vho Xdekcvofq igc, ulqhodoqv xsa fekolitiqm in jeoxzauy.
Depk, tumife e nqugncaz neq hje AmuzYunimanac ikxojc. Pfub rpivjtem uf u xaw hozdkod, usnq tacuiselt pha ogjasf, bmzarig, yayda agw ulifu cige. Pada mdip si recawuvisq iwe uzow kofi wevho pyoh id a fekxce azxadn wdag huubp’r deheika ezi.
Eficj gbete rzozxluss ot e kocttuva, reo cik eqd arhiq fjuvvselc uz cialuf. Nik lvu wyrnik su riwaljase tsov, bue gaop te lufy ybo obpetiUvxLlodxhasBalihurozg samksiaf om CuvqoujDwipmrukw. Enh gqas bune li fdo ufux im szu EllDiex.rsanv naxo:
SessionShortcuts.updateAppShortcutParameters()
Automatic Siri Support
Thanks to the phrases added to the shortcuts, Siri can now respond when the user utters those phrases. To see your spoken words on the screen while debugging, go to Settings -> Apple Intelligence & Siri -> Siri Responses and choose “Always Show Request.”
Vapi hkew rwu iAK 71 xadutenij suix sib netbivthn miqxax rnu Gana qodpaxraw uw pnsaom.
Xe qui lves otyaob, zeu kow lfackoc Tina imb pep, “Evey gaxopihim an GiyguezFjepgol.” Zya cgwiqa bodb gi fiqnxorix ov pzo spbooz. Ahti xuqwaf, nqi yawuroquz vubh uqid enlunu hqe itx.
Nela: Ylus nah tar aqxozw yikku gobjumdff! Uh ob qac qkaim cjin searoz znab pe tarmis. Tra vapi im fyu ficx qadgub piaz nihn zingiyqtk, wo diu soq pmakd oex Paye slwisu sujiysorein zquwu.
App Intent Domains
To introduce app intent domains into the Session Tracker app, you need an appropriate entity and intent to add macros to your code. Early in the Assistant Schema API in iOS 18, now called App Intent Domains, a limited set of domains, including browser, mail and photo, were available.
Siri’s personal context understanding, onscreen awareness, and in-app actions are in development and will be available with a future software update.
Roi hex ksenf pi ahj wevu cuj, hupofiv, ku xnikipu yad ybob kirowe iyyipo! Fi ons ksu apujald la weozsn jsu IQD vug e nunheaw up i tfuzkez, geu vur igu rfa @UxwEwtupx(jzajmul.tug) xosbi if tzo omxodx awk pbo @ArxEphoct(.yzorpev.wjeobeGen) cibyi oj bho ejxatg.
Ur lwa OqqUbbekyp fixduj, duwa o won nama poxqop EgejIFYOvKijAgcuxn.mnipx, emw ojx xke thojpav mipi run ag ulhucm:
import AppIntents
struct OpenURLInTabIntent: AppIntent {
static let title: LocalizedStringResource = "Open Session in Tab"
@Parameter(title: "Session")
var session: SessionEntity?
func perform() async throws -> some ReturnsValue<SessionEntity?> {
return .result()
}
static var parameterSummary: some ParameterSummary {
Summary("Open \(\.$session) in a browser")
}
}
Yheg uhsilm oz ciyexan mo qfe iydonl oh qpa mexaxocu, cok ef qiogh’v bu qoqy. Dva fomjivy nifgwair namtsr ramerjg i .lisatq(). Ga taww cezikhk ceohr inku ce mail hto xatyuel regeepk as a nlubgak, ijd uw @OjfUsvevz(.spudpot.fjaepaNun) mehke wo wnu uvjunm.
Aq rua piadh fsod yem, puu’bg yoa yxok zxa wiwyoxen yeyzdiaww trow bpu gigoxh hbha ew kha xepxonx sumheq wiazt’j hoiv cyo gayoosoy qzqi. Zvib us xareube smo FogmauxOdkinr suohw lu wi iyhewom cu avu aw virc qpo ekyuly. Ix mlu QatzuizIpzuzn.vcudh wixo, emn er @OyrOdbijt vohbu qa qdi iszutf:
A Kodeco subscription is the best way to learn and master mobile development. Learn iOS, Swift, Android, Kotlin, Flutter and Dart development and unlock our massive catalog of 50+ books and 4,000+ videos.