Flutter ios接受相冊分享的圖片進入app

使用的庫 flutter_sharing_intent: ^1.1.1
安卓端實現(xiàn)比較簡單,ios就比較麻煩,尤其是對于我這種沒有ios開發(fā)經(jīng)驗的人來說,一切都是陌生的,實現(xiàn)起來比較吃力
在24年9月份就嘗試在ios上集成,沒有成功
今年再次嘗試了一下,居然可以了,把過程記錄一下

  1. Add the following
    ios/Runner/info.plist
<key>AppGroupId</key>
<!--HERE set your group Id-->
<string>$(CUSTOM_GROUP_ID)</string> 
<key>CFBundleURLTypes</key>
    <array>
        <dict>
            <key>CFBundleTypeRole</key>
            <string>Editor</string>
            <key>CFBundleURLSchemes</key>
            <array>
                <string>SharingMedia-$(PRODUCT_BUNDLE_IDENTIFIER)</string>
            </array>
        </dict>
    </array>

<key>NSPhotoLibraryUsageDescription</key>
<string>To upload photos, please allow permission to access your photo library.</string>

第一步,有一個變量$(CUSTOM_GROUP_ID),我感覺這里其實不重要,因為我實現(xiàn)的時候,這里是直接復制的,啥都沒有改。
但是如果你想填也沒有問題,具體填什么,后面再說。

  1. Create Share Extension
    Using xcode, go to File/New/Target and Choose "Share Extension"
    Give it a name i.e. "Share Extension"


    image.png

    image.png

    image.png

    image.png

接下來比較重要的第一步,添加App groups

注意,這里Runner和ff-share都需要添加相同標識App groups,你創(chuàng)建的App groups id就可以填寫到第一步的$(CUSTOM_GROUP_ID)上了


image.png

image.png

弄好這一步就可以,切換到ff-share來運行調(diào)試了


image.png

第一次運行就有個報錯
image.png

這個報錯也折騰了好一會,解決辦法
image.png

好了,可以運行了,我選擇手機自帶的瀏覽器來測試


image.png

手機瀏覽器啟動之后,點擊這個分享就可以看到我們app圖標了
image.png

到這里基本就完成了。
還要添加三個文件
ios/Share Extension/ShareViewController.swift
ios/Share Extension/SharingFile.swift
ios/Share Extension/SharingFileType.swift
image.png

image.png

image.png

把官網(wǎng)提供的三個文件逐一拷貝即可
到這里基本大功告成了

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容