MFi認(rèn)證

2021-08-05   ?   Wendy
01MFi認(rèn)證

為什么要做MFi認(rèn)證?


從蘋果角度來看,為了更好的鞏固蘋果的生態(tài)圈,只有集成了有MFi芯片,才能跟iPhone、iPod,iPad進(jìn)行連接通信。

而只有經(jīng)過了MFi認(rèn)證的企業(yè)才能批量購買MFi芯片,并且都MFi芯片的供銷鏈條都有很嚴(yán)格的監(jiān)督管理,所以這樣蘋

果可以嚴(yán)格控制只有那些滿足蘋果規(guī)范和要求的外設(shè)才能加入到蘋果生態(tài)圈。


從生產(chǎn)廠商來看,經(jīng)過蘋果官方授權(quán),配件產(chǎn)品能完美兼容蘋果智能設(shè)備;提交MFi認(rèn)證過程中,硬件設(shè)備需要經(jīng)過蘋果

要求的ATS自測以及蘋果的嚴(yán)格測試,產(chǎn)品質(zhì)量更有保證;消費者也更加信任經(jīng)過了MFi認(rèn)證授權(quán)的配件;最后成功獲得

MFI授權(quán)這也成為技術(shù)與質(zhì)量實力的一種標(biāo)志,因為MFi認(rèn)證通過率僅2%,其中大部分企業(yè)因為申請資格不符合直接被拒

絕。


從iOS開發(fā)人員來看,MFi認(rèn)證是由硬件生產(chǎn)商主導(dǎo)進(jìn)行申請的,是蘋果對外設(shè)配件的一種認(rèn)證和授權(quán)。但是很多外設(shè)跟蘋果

進(jìn)行連接,并不只是跟iOS設(shè)備硬件或者iOS系統(tǒng)配合就可以完成對應(yīng)的功能(比如充電、CarPlay、播放ipod音樂(A2DP)

、接聽藍(lán)牙電話(HPF)或者提供GPS輸入源等)。很多時候為了實現(xiàn)特定的需求,需要由iOS App的配合,由iOS App跟對

應(yīng)外設(shè)進(jìn)行連接和通信,傳輸相關(guān)的控制命令對外設(shè)進(jìn)行控制,或者傳輸相關(guān)的外設(shè)數(shù)據(jù)進(jìn)行展示。iOS App跟外設(shè)的連接方

式有網(wǎng)絡(luò)、EAP和BLE (請參考我之前寫過的《iOS App連接外設(shè)的幾種方式》),其中EAP 是蘋果官方**的跟外設(shè)連接的

方式。只有經(jīng)過MFi認(rèn)證的外設(shè)才能使用EAP跟app進(jìn)行通信。


如何做MFi認(rèn)證?

MFi認(rèn)證的流程比較復(fù)雜,可以歸納總結(jié)為三個部分,如下圖所示,


MFi認(rèn)證(圖1)


MFi認(rèn)證流程

其中黃色背景標(biāo)注的部分是可能跟iOS App開發(fā)者相關(guān)的,我會重點介紹。其他部分則都是由硬件生產(chǎn)商主導(dǎo)進(jìn)行的,

我作為iOS 開發(fā)人員并不需要參與,不過我也會跟大家分享一些我所了解的信息。如果有什么不正確的地方也請相關(guān)老

司機(jī)指正交流。

02如何審請

一、申請人提交申請資料


首先,收集公司資料信息,這些資料主要包括了認(rèn)證負(fù)責(zé)人聯(lián)系信息,企業(yè)情況介紹,公司組織架構(gòu)、企業(yè)網(wǎng)站,物料

品質(zhì)控制以及ISO體系證書等資料。然后是在蘋果MFi官網(wǎng)(mfi.apple.com)上進(jìn)行注冊,并提交第一步收集到的公司

資料,進(jìn)行賬號申請。


接下來蘋果會進(jìn)行MFi體系審核。這個是非常關(guān)鍵的一個步驟。 主要考察公司對MFi芯片的管理體系,看公司是否有規(guī)范

的流程和系統(tǒng)來管理MFi芯片,能有效防止轉(zhuǎn)售芯片或者挪用芯片(把芯片用到未通過MFi認(rèn)知的項目上),蘋果會安排

專人或者代理公司來抽查。


如果MFi體系審核過了,蘋果還會對公司其他情況進(jìn)行考察,來評估該公司是否滿足MFi會員的資格。審核的標(biāo)準(zhǔn)主要看公

司相關(guān)資質(zhì),是否有較大的生產(chǎn)規(guī)模;是否擁有自主品牌;品牌在業(yè)內(nèi)是否有較高的地位(主要表現(xiàn)為各類榮譽(yù));是否曾

為其他國際知名企業(yè)供貨;研發(fā)人員是否達(dá)到蘋果要求的人數(shù)等,申請者一定保證申報資料的真實性,蘋果公司都會一一核實。


如果這些條件都滿足,恭喜你公司成為了MFi會員,能夠有資格購買樣品芯片,并且拿到蘋果提供的MFi官方開發(fā)文檔,該文

檔的每一頁都是帶有申請人姓名水印的,禁止對外公開,如果被發(fā)現(xiàn),有可能會被取消MFi會員資格。據(jù)說大部分的企業(yè)都會

被卡在會員資格審核這一步。


二、提交產(chǎn)品計劃,研發(fā)和自測


如果你的公司是屬于那幸運的那一小部分(據(jù)說是5%,本人道聽途說的,沒有官方數(shù)據(jù)支撐)通過了MFi會員資格審核,拿到

了蘋果的MFi研發(fā)官方文檔,也購買了MFi樣品芯片,那么就可以提交產(chǎn)品計劃,進(jìn)行產(chǎn)品研發(fā)和自測了。


提交產(chǎn)品計劃是非常關(guān)鍵的一步,需要根據(jù)要研發(fā)的公司產(chǎn)品的形態(tài)、所用技術(shù)方案和需要支持的iOS設(shè)備、iOS的相關(guān)信息都

進(jìn)行詳細(xì)的描述,其中比較重要信息有。


(1)附件概覽(Accessory Overview)


MFi認(rèn)證(圖2)


附件概覽

技術(shù)方案(Technology)如果你是做支持CapPlay的車機(jī),那么就選擇CarPlay,否則都應(yīng)該選擇iAP;如果你的硬件需要跟

iPhone連接,并且處理相關(guān)業(yè)務(wù),而不僅僅是充電線或者數(shù)據(jù)線,那么在Components里應(yīng)該選擇Authentication coprocessor.


(2)固件和硬件(Firmware & Hardware)


MFi認(rèn)證(圖3)


固件和硬件信息

現(xiàn)在所有的MFi認(rèn)證的硬件都需要支持iAP2協(xié)議,所以必須要選iAP2或者同時支持iAP2和iAP1.然后外設(shè)硬件跟蘋果設(shè)備是如何

通信的,是使用USB的Host模式,還USB的Devices模式,還是串口或者藍(lán)牙,這個需要根據(jù)產(chǎn)品的需求、特性進(jìn)行選擇。


MFi認(rèn)證(圖4)


(3)選擇硬件所支持的iAP2的特性


iAP2特性

(4)選擇所支持的蘋果設(shè)備型號。


根據(jù)產(chǎn)品的設(shè)計選擇所需要支持的蘋果設(shè)備型號,包括iPad,iPhone和iPod的各種型號。


(5)App相關(guān)的信息


MFi認(rèn)證(圖5)


App相關(guān)信息

這部分也是iOS開發(fā)者需要重點關(guān)注的部分,包括App的版本號,BundleID和協(xié)議字符串以及iOS App的主要功能特性描述,

這部分信息需要跟最后送MFi審核時附帶的App測試包的信息保持一致。提交了產(chǎn)品計劃之后,就可以拿到PPID 

(Product Plan ID).這個PPID也是跟iOS App開發(fā)者需要關(guān)注的。當(dāng)App開發(fā)完成,提交AppStore上線時,需要在版本審

核備注信息里帶上這個PPID,否則審核是過不了的.


接下來就可以進(jìn)行產(chǎn)品研發(fā)了。主要是硬件生成商需要根據(jù)蘋果提供的開發(fā)文檔進(jìn)行硬件和驅(qū)動認(rèn)證程序的開發(fā)。而iOS App

開發(fā)者則主要是需要成 iOS系統(tǒng)提供的一個系統(tǒng)框架ExternalAccessory.framework,并且在info.plist中配置好協(xié)議字符串

(Supported external accessory protocols)。當(dāng)iOS 設(shè)備通過USB線或者藍(lán)牙連接到對應(yīng)硬件時,iOS系統(tǒng)會把符合MFI認(rèn)證

要求的外設(shè)抽象成了一個流對象,App通過指定的協(xié)議字符串來創(chuàng)建一個EASession類的實例來訪問到該流對象,就能通過

NSInputStream和NSOutputStream跟硬件件進(jìn)行通信了。


產(chǎn)品研發(fā)完成后需要進(jìn)行ATS( Accessory Test System)自測,并提供自測報告。ATS自測蘋果會提供ATS Box的測試工具和軟件,

主要是針對硬件進(jìn)行電氣特性相關(guān)的測試,包括各個節(jié)點的電壓電流值是否滿足蘋果要求,然后傳輸帶寬是否穩(wěn)定,是否達(dá)到蘋果

要求等等。


自測完成之后就可以把硬件和所配套的軟件(iOS App的ipa安裝包)送到蘋果指定的測試實驗室進(jìn)行認(rèn)證測試。iOS開發(fā)者在這個

步驟需要關(guān)注的是如何打包ipa包。因為如果直接用開發(fā)證書打包,那么蘋果測試人員的iPhone不在你開發(fā)證書的設(shè)備列表中,是

無法安裝的。如果用企業(yè)證書打包的話,可能AppStore發(fā)布證書對應(yīng)的bundleid跟企業(yè)證書的bundleid不一致,所以也不可行。

所以**的做法是,等到產(chǎn)品研發(fā)完成和自測之后,就帶上產(chǎn)品計劃中拿到的PPID,提交AppStore進(jìn)行審核。等審核通過之后,

就可以直接從AppStore下載對應(yīng)的ipa安裝包,配合硬件一起送MFi認(rèn)證測試了。

03測試審核和批量生產(chǎn)

這個階段也是硬件生產(chǎn)商主導(dǎo)進(jìn)行的,跟iOS app開發(fā)者關(guān)系不大。當(dāng)硬件的MFi認(rèn)證送審?fù)ㄟ^之后,還需要對產(chǎn)品的包裝也提交

認(rèn)證和審核。審核通過之后,就可以獲得蘋果授權(quán)進(jìn)行MFi芯片的批量購買,然后根據(jù)銷售計劃進(jìn)行硬件的批量生產(chǎn)和銷售了。


整個MFi認(rèn)證的周期大概需要3個月到半年的時間,并且每次提交認(rèn)證測試都需要支付一筆600美金的測試費用,所寄去測試的硬件

測試樣品蘋果也是不會寄回來的。


以上就是藍(lán)亞小編Orange,為大家分享的關(guān)于MFi認(rèn)證如何申請,測試審核和批量生產(chǎn)的相關(guān)知識,相信大家對此已經(jīng)有了基本的了解,

關(guān)于專業(yè)方面的問題,有任何疑問都可以聯(lián)系下方專業(yè)人士為您解答,希望對大家有所幫助。


04聯(lián)系我們

藍(lán)亞技術(shù)服務(wù)(**)有限公司是國家CNAS、中國計量認(rèn)證CMA、美國實驗室認(rèn)可協(xié)會A2LA、無線充電聯(lián)盟WPC、藍(lán)牙認(rèn)證

評估委員會SIG、亞馬遜Amazon等國際機(jī)構(gòu)的認(rèn)可實驗室。藍(lán)亞的使命:讓您的產(chǎn)品通全球!


咨詢聯(lián)系人:Benson


手機(jī)/Mob:(+86)13632500972 


郵箱/E-mail:marketing@cblueasia.com


地址/Add:**市寶安區(qū)石巖街道北環(huán)路107號鴻景達(dá)產(chǎn)業(yè)園C棟


藍(lán)亞檢測不止服務(wù)!


  

MFi認(rèn)證(圖6)

優(yōu)勢項目

         無線充Qi

           藍(lán)牙BQB

                  蘋果MFi

USB-PD快充

   中國SRRC

認(rèn)證項目

大中華China

 質(zhì)檢報告

    CCC

 CQC

      CTA

     SRRC

  BSMI

    NCC

     OFCA

亞洲Asia

    METI

   TELEC

PSE         

      JATE

     VCCI

    KC

BLS     

SASO|IECEE  

歐洲EU

      CE

   RoHS

      REACH

      EN71

     PAHS

    GS 

WEEE    

       ERP

美國Americas

      FCC

      IC

      Rro65

      CEC

      DOE

 ETL\UL  

     CSA

      NOM

其他Othericas

      CB

  UN38.3 

    IEC62133

   EN50332

     RCM

  MEPS

     SAA


汽車電子Auto-Eiectronic

    E-mark

     MFi

      Carplay

     CarLife   

Android Auto




測試項目

   汽車|軍工電子EMC

    消費電子EMC  

Radio

          Safety

     語音質(zhì)量測試   

     語音識別測試     

驗貨與驗廠

            驗貨

           驗廠

    社會責(zé)任審核  

       質(zhì)量管理體系   

           BSCI

           SEDEX

<script> var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://#/hm.js?6844225bf949cff65b89ec7139b9ad0f"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script>