每次在 Google Play Console 更新 Flutter app 的時候,我都會收到以下這樣的 warning:

它的意思是,這個 app 裡面有用到 native code,但是上傳的 app bundle 並沒有包含跟這些 code 相對應的資訊,所以他們強烈建議開發者上傳相對應的符號檔案 (symbol file),這樣之後如果 app 有 crashes 或是 ANRs,開發者會比較容易 debug。
但,現在問題來了,這個 symbol file 在哪?
所以我把那整串句子拿去 google,得到了這個答案:
- 在 [PROJECT]\build\app\intermediates\merged_native_libs\release\out\lib 這個資料夾底下,可以找到三個資料夾:
- arm64-v8a
- armeabi-v7a
- x86_64

2. 全選這三個資料夾,然後壓縮,檔名不重要。

3. 開啟 Google Play Console -> [APP] -> 左側選單點選 App bundle explorer

4. 這裡可以看到這個 app 的所有版本,點選跟這個 symbol file 相對應的版本,然後按 Downloads,就會在底下看到 Native debug symbols

5. 點選 Native debug symbols 最右邊的那個上傳符號,就會看到上傳對話框。

6. 把剛才壓縮的檔案拉進這裡,開始上傳。

7. 上傳完成後,就會看到那個壓縮檔出現在上面。Done!
