




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
電信終端產業(yè)協(xié)會發(fā)布版權聲明本文件的版權屬于電信終端產業(yè)協(xié)會,任何單位和個人未經許可,傳播、發(fā)行、合訂和宣貫等,也不得未經允許采用其具體內容編制本團傳播、發(fā)行、合訂和宣貫等,也不得未經允許采用其具體內容編制本團I III IV 1 1 1 1 1 1 2 2 2 2 3 3 3 3 5 5 5 6 7 7 8 10 11 11 12 12 13 14 14 14 15 16 16 17 17 17 17 18 18 18 21 22 22 26 28 30A.1意圖共享數(shù)據示例 30 31 32 33 34 34 36 38A.9getSid方法示例 39 39A.11簽名代碼邏輯示例 39 41本文件按照GB/T1.1—2020《標準化工作導則第1部分:標準化文件的結構請注意本文件的某些內容可能涉及專利。本文件的發(fā)布機構不承擔識別專利的責任。應用企業(yè)開發(fā)適配成本,避免終端智能體生態(tài)產生碎片化,需要制定智能終端意圖框架系列標準。1智能終端意圖框架接口技術要求本文件適用于搭載安卓操作系統(tǒng)的智能終端意圖框架開發(fā)、適配T/TAF282—2025智能終端意圖框架總體UTF-8:8位元Unicode轉換格式(UnicodeTransformationFormat,8-bit)5意圖接口安卓端側技術方案2應用側終端側應用和終端系統(tǒng)之間通信支持同步和異步兩種調用模式,同步的方式直接使用ContentProviderDomainProviderDomainProviderIntelligentIntentProviIntelligentIntentProvi應用側圖2安卓同步接口調用流程——意圖調用:應用實現(xiàn)業(yè)務ContentProvid路徑,系統(tǒng)將在意圖調用階段調用應用聲明的ContentProvider的call()3的結果需要等待Provider端調用R1.call(method+IntentContextDomainProvider2.receiver.send(Exc2.receiver.send(Exc1.call(1.call(method+SchemIntelligentIntentProvi應用側終端側5.3.2AndroidManifesandroid:name="IntelligentIntandroid:value="assets/intelligent_intent_co{{//名稱應當遵循意圖框架規(guī)范,當前僅支持預置垂域意圖,不//應用內意圖名稱唯一,不允許出現(xiàn)相同"intentName":"Navigation.ShareNa4{//名稱應當遵循意圖框架規(guī)范,當前僅支持預置垂域意圖,不//應用內意圖名稱唯一,不允許出現(xiàn)相同"intentName":"Navigation.Star//意圖調用類型,foreground/back//background則配置響應服務如:content://co"executeEntry":"navi:]}-是5-是Array-是-是-是-是意圖調用類型,可選值:foreground/-是content://com.xxx.xxx否Array-是IntelligentIntent:意圖共享的基礎數(shù)據單元,應用在調用意圖共享接口的時候需要6是是是是是是Array否是是是是是是是發(fā)生時間、結束時間{"startTime":172是是是是是是是是否否是是否是android:name="intelligent.permission.SHARandroid:protectionLevel="7android:name="intelligent.permission.EXECUTEandroid:protectionLevel="android:label="Applicatioandroid:name="com.xxx.IntelligentIntenandroid:authorities="Intelligandroid:name="com.xxx.IntelligentIntenandroid:authorities="Intelligandroid:permission="intelligent.permission.SHAvalauthorities=Settings.Global.getString(context.getContentResolver(),"inttent_authorities")?:"Intell<uses-permissionandroid:name="in<uses-permissionandroid:name="intel<providerandroid:au——代碼查詢:a)應用在注冊階段申請意圖權限,審核通過后應用與其對應的權限存儲在云側意b)端側意圖框架從云側意圖框架預拉取意圖授權信息,并緩存到本機;8);通過ContentProviderClientfuncall(authority:String,method:String,arg:StriProviderClientIntelligentIntentProvider應用側終端側9值10101001-應用無該意圖共享權限10101002-應用該意圖共享權限已過期10102001-意圖共享參數(shù)錯誤10103001-意圖共享數(shù)據大小超過限制10103002-意圖共享頻次超過限制10103003-意圖共享開關已關閉10103004-意圖共享實體數(shù)量超限10103005-意圖共享版本不支持參數(shù)除了包含IntelligentIntent之外還需要包含ResultReceiver對象,call()方法的響應值為IntelligentIntentProvi應用側終端側1.call(“shareIntentAsync”,Bundle(intelligent對應call方法的參數(shù)見表6。值值數(shù)據結構描述putParcelable("shareIntentReceiver",shareIntentReceiver)/10101001-應用無該意圖共享權限;10101002-應用該意圖共享權限已過期;10102001-意圖共享參數(shù)錯誤;10103001-意圖共享數(shù)據大小超過限制;10103002-意圖共享頻次超過限制;10103003-意圖共享開關已關閉;10103004-意圖共享實體數(shù)量超限;10103005-意圖共享版本不支持。刪除意圖的接口——deleteIntent:通過指通過ContentProviderClient值該Bundle需要傳遞如下內容:putString(“intentName”,“navigati名稱putStringArrayList(“identifiers”,a10201001-應用無該意圖刪除權限;10202001-刪除意圖參數(shù)錯誤;10203001-刪除意圖失敗。deleteEnti通過ContentProviderClient值該Bundle需要傳遞如下內容:putString(“int稱putStringArrayList(“entityIds”,ar10201001-應用無該意圖刪除權限;10202001-刪除意圖參數(shù)錯誤;10203001-刪除意圖失敗。AppLandingPagerrrAppLandingPagerrr5.5.2意圖參數(shù)(IntentParamIntentParams是意圖調用階段傳遞給應用的參數(shù),用于攜帶意圖調用過程中的上下文信息,如是是是是觸發(fā)意圖調用的設備信息,可選值:phone/watch/tablet是否否否是20301001-無該意圖調用權限;20301002-用戶未授權該意圖調用;20302001-意圖調用參數(shù)錯誤;20303001-不支持該意圖調用;20303002-意圖調用響應超時。是是否后臺模式概述content://authority/methodNam——methodName:意圖調用方法名稱,將——ExecteResult:意圖調用響應結果應包含的數(shù)據格式。后臺意圖調用參數(shù)規(guī)范見圖9。同步意圖調用DomainProvider應用側異步意圖調用1.call(method+arg+IntentCoDomainProvider2.receiver.send(ExcuteResult)IntentExecut應用側終端側queryFeature(featureN是10401001-應用無查詢該特性權限;10402001-特性查詢請求參數(shù)錯誤;10403001-未知特性。是否——enableIntelligentIntent:查詢當前系統(tǒng)是否開啟意圖框架能力,{}}{{}}{{{{}]}}“intentName2”],結果:是10501001-無權限調用getS10503001-getSid調用次數(shù)超10503002-getSid未知異常。是否“oaid”,—如:oaid/duid/phoneNumber“expire_in”:86400};否使能意圖共享和意圖調用能力。support_intelligent_valsupport=Settings.Global.getInt(context.getContentResolver(),"support_in來源類型(1位)功能類型(2位)錯誤類型(2位)錯誤編碼(3位)1-系統(tǒng)(端側);-意圖共享;-權限類;如:001-無訪問權限…2-應用(端側);-意圖刪除;-參數(shù)類;3-終端方云側;-意圖調用;-業(yè)務類;4-應用方云側。-特性查詢;-其他類型。-網絡類;-其他類型。——網絡圖片:使用https地址即可,意圖框架會去拉取對應的圖片資源,需要注意的是:部分場景可能會導致網絡圖片加載失敗影響效果(如開機啟動、弱網、無為頭部數(shù)據和編譯數(shù)據。只有兩部分完整的數(shù)據,才能解析出正確的數(shù)據。如:data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFwAAACOCA...應用包內圖片統(tǒng)一使用app://app_package/開頭后接具體android://com.xx.xx/assets/android://com.xx.xx/res/i問權限)獲取靜態(tài)資源,寫法如下:-是-是意圖版本號,如“1.0”否-否意圖調用的響應入口(GET):/ServiceEndpoint/,參數(shù)支持Array-否是否否providerOAuthExpireT否否否否-否是終端方開放平臺申請分配的client_id,1是終端方開放平臺申請分配的client_是固定值“client_credentials”——請求路徑:/intent/oauth2/v1/——請求頭:Content-type:x-www-form-url--0-是-是-是-是否簽名邏輯的輸出結果用來填充X-Api-Sign字段,發(fā)起請求前b)請求參數(shù)使用&拼接字符串,值為null的參數(shù)不參與簽名,拼接成k1=v1&k2=v2;d)對第3步得到的字符串進行HmacSHA256計算,計算時使用的密鑰key為獲取使用的access_token=${access_tokc)云側意圖框架在發(fā)起意圖調用前向應用云端發(fā)f)云側意圖框架向應用云端發(fā)起意圖調用請是否否providerOAuthExpireT否否否否應用云端應用云端意圖根據面向的人群不同,可以分為面向特定人群的事件共享和面向指定——事件共享:該類共享面向特定人群,比如在天氣異常的時候提醒某個特定區(qū)域內的所有用戶——請求路徑:/intent/v1/shareIntent;——請求方法:POST;——請求頭:?X-Client-Send-Ut{{"requestId":"4f93a967effb29a10bd}}{{}{}意圖框架端側提供獲取SID(ShareId)接口,在云端用戶意圖共享場景,需要知道意圖數(shù)據推送c)應用方云側意圖共享數(shù)據的時候攜帶SID;d)云側意圖框架收到應用云側共享的數(shù)據后適時將數(shù)端側意圖框架端側意圖框架云側意圖框架系統(tǒng)入口-{}請求路徑:/intent/v1/deleteIContent-type:applicationX-Client-Send-Utc-Ms:172965478X-Client-Send-Utc-Ms:172965478{"requestId":"4f93a967effb29a10bd}}是Array是0{{"requestId":"4f93a967effb29a10"targetIds":["2fe3a970-efbb-29a0-0}}請求路徑:/intent/v1/deleteEContent-type:applicationAuthorization:88F5CEZsArO…wBhSX-Client-Send-Utc-Ms:172965478是Array是00——調用的接口method為GET;——url路徑允許拼接意圖上下文參數(shù),拼接形式為intentParams=base64(JSONSt是是是觸發(fā)意圖調用的設備信息,可選值:phone/watch/tablet/是否否意圖調用參數(shù),應用方應用解析,如地理位置坐標/用戶習慣否是是否A.1意圖共享數(shù)據示例{{"intentName":"Navigation.S}]}{"intentName":"Ridehailing."identifier":"e82d498d4c0dcab8e82}"entityId":"202408211736e"brandLogo":"https://www."image":"https://www.x"buttonDeeplink":"onetravel://activity?}}A.2同步接口call方法代碼示例valauthorities=Settings.Global.getString(context.getConten"intelligent_intent_authorities")?:"Intel.acquireContentProviderClientvalresultBundle=client.call("shvalshareResult=resultBundle.getStrinvalcode=JSONObject(shareResult).ge}A.3異步接口call方法代碼示例overridefunonReceiveResult(resu}}}}valreceiver=MyShareIntentReceiver(Handler(Looper.getMain.acquireContentProviderClient("IntellvalcallResultBundle=client.call("shareIntputString("intentData","putParcelable("shareIntentReceiver",receiverForSending(reprivatefunreceiverForSending(actualReceiver:ResultReceiver)actualReceiver.writeToParcelparcel.setDataPositvalreceiverForSending=ResultReceiver.CREATOR.createFromParc}A.4deleteIntent方法示例.acquireContentProviderClient("IntellvalresultBundle=client.call("deleputString("intentName","Navigation.StartNavigaputString("intentName","Navigation.StartNavigaputStringArrayList("identifiers",arrayListOf("id1","valshareResults=resultBundle.getStrinvalcode=JSONObject(shareResults).get}A.5A.5deleteEntity方法示例.acquireContentProviderClient("IntellvalresultBundle=client.call("deleputString("intentName","Navigation.NavigationputStringArrayList("entityIds",arrayListOf("abvalshareResults=resultBundle.getStrinvalcode=JSONObject(shareResults).get}A.6同步意圖調用代碼示例AndroidManifest.xml:android:name="com.xxxmap.MyNavigationIntenandroid:authorities="elligentandroid:exported="true"><actionandroid:name="intelligent.action.編寫意圖調用的ContentProvider,如:MyNavigationIoverridefuncall(authority:arg:String?,extras:Bundle?):super.call(authoritvalrequestId=intentParams.getString("rputString("result",JSONObject(putString("message","hasnopermisputString("requestId",requ}}valintentParams=JSONObject(extras!!.getString("intvalresult=queryNavigation(inputString("result",JSONObject(putString("message","succeputString("requestId",requesputString("data",JSONObject(result).toStr}}putString("result",JSONObject(putString("message","notsuputString("requestId",requ}}}}A.7異步意圖調用代碼示例AndroidManifest.xml:android:name="elligent.MyNavigationIntenandroid:authorities="elligentandroid:exported="true"><actionandroid:name="intelligent.action.ACTION_EXECUT編寫意圖調用的ContentProvider,如:MyNavigationIoverridefuncall(authority:arg:String?,extras:Bundle?):super.call(authoritvalrequestId=intentParams.getString("rvalreceiver=extras.getParcelable("executreceiver.send(1,Bundle(putString("result",JSONObject(putString("message","hasnopermisputString("requestId",requ}valintentParams=JSONObject(extras!!.getString("intqueryNavigationAsync(intentParams,callIdreceiver.send(2,Bundle(putString("result",JSONObject(putString("message","notsuputString("requestId",requ}}/*receiver:ExecuteIntentvalresult=queryNavigation(inreceiver.send(0,Bundle(putString("result",JSONObject(putString("message","sputString("requestId",reput("data",JSONObject(}}.acquireContentProviderClient("IntellvalfeatureNames=listO
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 美食廣場整體承包經營合同范本
- 中醫(yī)護理三因制宜
- 餐飲業(yè)股權投資合作與風險控制合同
- 商務代駕服務委托合同
- 鐵路快運代理服務合作協(xié)議書
- 腸脹氣病人的護理
- 垃圾處理設施安全責任承包管理合同
- 腫瘤患者出院健康指導
- 餐飲品牌商標使用權及加盟管理合同
- 餐飲企業(yè)加盟店經營數(shù)據保密協(xié)議
- 十五五智慧校園建設發(fā)展規(guī)劃
- 兒童創(chuàng)意民族紋飾課件
- 廣東省廣州市增城區(qū)2023-2024學年八年級下學期期末數(shù)學試題(含答案)
- 廣東省廣州市番禺區(qū)2022-2023學年三年級下學期數(shù)學期末試卷(含答案)
- 2024-2025 學年八年級英語下學期期末模擬卷 (南通專用)原卷
- 2025河南中考:歷史必背知識點
- ERAS理念在婦科圍手術期中的應用
- 2024屆上海市各區(qū)高三語文二模作文范文匯編(16區(qū)全)
- 三農課件教學課件
- 陜西高速延長石油有限責任公司招聘筆試題庫2025
- 2025年中國寵物定位器行業(yè)發(fā)展?jié)摿︻A測及投資戰(zhàn)略研究報告
評論
0/150
提交評論