本篇文章在介紹從 Apple 的 App Store Connect 中為 iOS App 建立 TestFlight 外部測試群組;並且將 App 加入測試建置版本、填寫 Beta App 審查資訊、建立公開連結,並在版本通過審查後讓外部測試人員安裝測試的完整流程。
透過先建立 testflight 專用的外部測試連結後,再等待 Apple 將送至 Beta 審查的 App 審查完成後,就能把已核准的建置版本正式提供給外部測試人員開始進行外部測試。

本篇文章在介紹從 Apple 的 App Store Connect 中為 iOS App 建立 TestFlight 外部測試群組;並且將 App 加入測試建置版本、填寫 Beta App 審查資訊、建立公開連結,並在版本通過審查後讓外部測試人員安裝測試的完整流程。
透過先建立 testflight 專用的外部測試連結後,再等待 Apple 將送至 Beta 審查的 App 審查完成後,就能把已核准的建置版本正式提供給外部測試人員開始進行外部測試。

這次要操練的對象是 Apple 的 App Store Connect,並且在其中建立一個 App 可供上傳:

也就是讓 App Store Connect 則成為 App 正式亮相前的後台舞台,從 App 名稱、語言、Bundle ID 到 SKU,都必須與前面建立好的資料互相呼應。整個流程的核心不是單純填表,而是替 App 建立一條可信任、可追蹤、可發佈的路徑。
.NET MAUI 撰寫好 iOS 應用程式後,不外乎就是要發佈該 iOS 應用程式到 App Store Connect 當中,除非所寫的是專屬給企業內部使用的 iOS 應用程式。
而在 Xamarin 的時代就已經可以透過 Visual Studio 的介面操作,直接發佈 iOS 應用程式的 *.ipa 到 App Store Connect,詳情請看:
透過 Visual Studio 串接 App Store Connect 發佈 iOS App
https://dotblogs.com.tw/jamestsai/2020/06/05/Using-Visual-Studio-publish-iOS-App-to-App-Store-Connect
而微軟官方文件也有相關的撰寫:
在 前篇 中已經順利在 Visual Studio 登入 Apple Developer Account 並且透過 API Key 存取 Apple Developer 的相關資訊。

可是這時候注意到一件事情:
Status 顯示 Not In Keychain
本篇介紹是要替一個即將登上 App Store 的 iOS App 進行實機開發、測試、與發佈的設定準備
App 不是只要寫好程式就能出發,它還需要在 Apple Developer 裡擁有清楚的身分,也就是正確的 Bundle Identifier;需要能證明開發者身分的 Certificates;也需要讓開發、測試與發佈流程順利通行的 Provisioning Profiles。
當這些資料都整理好後,macOS 的 Xcode 也就可以像是一個本機端的檢查站,負責確認 Apple Account、Team、憑證與 Profiles 是否都能被正確使用。
在這當中就是要確保 Identifier、Certificate、Profile 與 App Store Connect 的 App 紀錄彼此對得上。
開始吧~~~
這篇有提到:
在 macOS 上最主要就是要安裝 Xcode,而如果要安裝 Xcode 的管道,基本上有兩種:
- 透過 macOS 上的 App Store 安裝。(登入 Apple 帳號後即能免費下載使用)
- 透過 Apple Developers 網站來下載 .xip 安裝。(需要先有訂閱 Apple 開發者帳號才能下載使用)
本篇就來談談如何透過 .xip 來安裝 Xcode。
續接前篇,趕緊來看看怎達成下圖效果吧!

而由於 .NET MAUI 是一套建置跨平台應用的開發技術,所以如果要在 上回 所建構出的 .NET MAUI 專案,直接切換建置 Android 出應用程式並不是什麼難事:


如果需要在 UI 上需要呈現統計圖表的話,LiveCharts2 是一套很不錯的統計圖表的套件,除了完全 OpenSource 外也如官網所提到的,對於 .NET 相關跨平台 UI Framework 都有支援。
https://livecharts.dev/#frameworks
如果考慮 UI 呈現的感覺與效果,個人覺得 LiveCharts2 實在稱的上是 .NET 跨平台開發者在統計圖表上的不二選擇!
在 .NET MAUI 的專案當中若使用 Onion.Maui.GoogleMaps 這個 Nuget 套件(前身為 Xamarin.Forms.GoogleMaps) 後,在 iOS 平台上就能順利呈現 Google Maps 的效果:

接下來就看看如何在專案中開始使用此 "Onion.Maui.GoogleMaps" 套件囉~~~
而若要讓 App 在 iOS 上一樣能使用 Google Maps 的話,那就跟 Android 使用 Google Maps 一樣,需在 Google Map Platform 申請 Google Maps SDK for iOS 的金鑰。

本篇就來談談如何在 Google Maps Platform 上申請相關金鑰。
若在 .NET MAUI 的應用程式中,使用 "Microsoft.Maui.Controls.Maps" 的 Maps 控制項,在 Android/iOS 上呈現起來大致如下:

使用其 Data Binding (資料繫結)時至少要掌握的三個關鍵處理:
如果按照標題的概念來看,其實網卡的 DNS 設定錯誤,仍然是可以上網的…
所有的連線都要轉成 ip 位址的方式。
不會有人去記住要使用的網站 ip 吧!
好,就算記住了,Android 系統的相關連線服務也還是靠 DNS 才能正確連線使用阿…所以還是來知道一下怎麼處理吧!
由於當前(2022/05)要使用 .NET MAUI 時,需要把 Visual Studio 切換到 Preview 的版本安裝,才能進行測試,這會造成一個問題是,Visual Studio 跟 Mac 上安裝 Xamarin.iOS 的版本不一致。
雖然大致上都沒什麼問題,但就會造成每次要從 Windows 上的 Visual Studio 連線到 Mac 上時,會出現警告訊息:

在 .NET 5 已經推出一段時日的今天,.NET 6 已經正式邁入 preview2 (正在撰寫本文的時候官方 release preview 3 了😂)階段。
讓我們來看看下一代的 Xamarin.Forms 變成 MAUI 會是如何囉~~~
Ba ba ri as ras ti ti ti ras ti ti. Rastis! Rastis! Ra ti ti la.
在 .NET 5 已經推出一段時日的今天,.NET 6 已經正式邁入 preview2 (正在撰寫本文的時候官方 release preview 3 了😂)階段。
隨著距離 .NET 6 正式版推出的時間越來越近,有越來越多捧友關心 Xamarin.Forms 在 .NET 6 中會如何改變。而如果使用 Xamarin.Forms 開發的觀念有正確的話,目前到 preview 3 的釋出結果來看,其實來說沒有太多的改變。
真要說最大的改變就是改名 MAUI 的全新感受吧! 所以就讓我們來一探究竟囉…