全部产品
Search
文档中心

Mobile Platform as a Service:Atasi konflik wire/okio

更新时间:Jan 28, 2026

Deskripsi konflik

mPaaS menggunakan wire/okio untuk konektivitas jaringan Remote Procedure Call (RPC). Pustaka okhttp juga mereferensikan okio. Konflik wire/okio dapat terjadi jika Anda menggunakan okhttp dan mPaaS secara bersamaan.

Solusi

Baseline 10.1.68

Hapus dependensi wire/okio dari mPaaS, lalu lakukan pengujian regresi pada fitur Mobile Gateway untuk memastikan fungsinya berjalan dengan benar. Prosedurnya sebagai berikut:

  1. Konfirmasi versi wire/okio yang digunakan oleh mPaaS.

    'com.squareup.okio:okio:1.7.0@jar'
    'com.squareup.wire:wire-lite-runtime:1.5.3.4@jar'
  2. Dapatkan informasi group:artifact untuk SDK pihak ketiga mPaaS.

    'com.alipay.android.phone.thirdparty:wire-build'
  3. Hapus pustaka mPaaS.

    • Jika Anda mengintegrasikan mPaaS menggunakan metode AAR native, Gradle secara otomatis menyelesaikan dependensi ke versi yang lebih tinggi, sehingga tidak diperlukan penghapusan manual. Versi yang disediakan oleh mPaaS umumnya lebih stabil dan aman. Disarankan untuk menggunakan versi mPaaS tersebut. Jika terjadi ketidakkonsistenan versi, uji fitur mPaaS sebelum merilis guna memastikan stabilitas.

    • Jika Anda mengintegrasikan mPaaS menggunakan metode berbasis komponen (Portal & Bundle), lakukan langkah berikut:

      mpaascomponents {
      excludeDependencies = [
        "com.alipay.android.phone.thirdparty:wire-build"
      ]
      }
  4. Tambahkan kembali wire atau okio ke proyek Anda menggunakan versi publik dari pustaka tersebut. Langkah ini tidak diperlukan untuk metode integrasi AAR native karena mPaaS telah menyertakan dependensi wire dan okio dalam pustaka com.alipay.android.phone.thirdparty:wire-build. Tambahkan kembali secara selektif sesuai kebutuhan.

    • Jika hanya terjadi konflik okio tanpa konflik wire, tambahkan wire.

      implementation 'com.squareup.wire:wire-lite-runtime:1.5.3.4@jar'
    • Jika hanya terjadi konflik wire tanpa konflik okio, tambahkan okio.

      'com.squareup.okio:okio:1.7.0@jar'

Baseline 10.2.3

Hapus sepenuhnya dependensi versi mPaaS dan gunakan versi yang dibutuhkan oleh aplikasi Anda. Untuk mengatasi konflik wire/okio, ikuti langkah-langkah berikut:

  1. Hapus wire dari mPaaS karena mPaaS tidak memiliki dependensi wajib terhadap pustaka wire.

    • Untuk proyek AAR native, lakukan langkah berikut:

      configurations {
      	all*.exclude group: 'com.alipay.android.phone.thirdparty', module: 'wire-build' 
      }
    • Untuk proyek berbasis komponen (Portal & Bundle), lakukan langkah berikut:

      mpaascomponents {
              excludeDependencies = [
                      "com.alipay.android.phone.thirdparty:wire-build"
                  ]
      }
  2. Ubah semua kelas protobuf RPC di aplikasi Anda yang sebelumnya mewarisi dari com.squareup.wire.Message agar mewarisi dari com.mpaas.thirdparty.squareup.wire.Message.

    Lakukan pengujian regresi pada fitur-fitur berikut: