2023-06-26 21:00:08 來源 : OSCHINA
(資料圖)
uni-app 開發(fā)商 DCloud 最新回應(yīng)稱,經(jīng)過與 Google Play 溝通,此問題于 6.24 號(hào)晚上提交 hello uni-app 應(yīng)用到 Google Play,經(jīng)審核測(cè)試確認(rèn)已解決。
程序員發(fā)帖稱自己用開源框架 uni-app 開發(fā)的 App 被 Google Play 下架,原因是 uni-app 自帶的 SDK 包含違反 Google Play 政策的內(nèi)容——包括廣告代碼,以及下載第三方 App 的代碼。
uni-app
是一個(gè)使用 Vue.js 開發(fā)所有前端應(yīng)用的框架,開發(fā)者編寫一套代碼,可發(fā)布到 iOS、Android、Web(響應(yīng)式)、以及各種小程序(微信/支付寶/百度/頭條/飛書/QQ/快手/釘釘/淘寶)、快應(yīng)用等多個(gè)平臺(tái)。
DCloud 官方對(duì)此回應(yīng)稱,經(jīng)過與 Google Play 溝通,此問題于 6.24 號(hào)晚上提交 hello uni-app 應(yīng)用到 Google Play 審核測(cè)試確認(rèn)已解決。
App 被下架主要原因是 DCloud SDK 中存在安裝 APK 的代碼,而 Google Play 不允許應(yīng)用直接下載 APK 進(jìn)行安裝,安裝應(yīng)用必須通過 Google Play 操作。但對(duì)于國(guó)內(nèi)應(yīng)用市場(chǎng),在 App 中直接下載 APK 是被允許的,而 SDK 沒有區(qū)分國(guó)內(nèi)和 Google Play 渠道版本,實(shí)際都包含了 APK 安裝代碼 (plus.runtime.install)。
P.S. 正因國(guó)內(nèi)應(yīng)用市場(chǎng)沒有不允許 App 安裝 APK 的限制,很多 Android 應(yīng)用都使用 plus.runtime.install 安裝自己的更新版。
雖然 Google Play 的政策一直都不允許 App 自己安裝 APK,但之前的檢測(cè)方式是檢測(cè)應(yīng)用權(quán)限(android.permission.INSTALL_PACKAGES 和 android.permission.REQUEST_INSTALL_PACKAGES),只要沒有安裝 APK 的權(quán)限即可上架。
如上文所說,DCloud SDK 的源碼里一直都有安裝 APK 的代碼。但在端午期間,Google Play 突然升級(jí)了檢測(cè)方式,對(duì)于事實(shí)上無法執(zhí)行的 APK 安裝代碼進(jìn)行了掃描。雖然它沒有應(yīng)用安全權(quán)限,無法執(zhí)行 APK 安裝,但按照 Google Play 更新后的政策,只要源碼里有安裝 APK 相關(guān)的代碼都被視為不合規(guī)。
DCloud 表示,后續(xù)他們將把安裝 APK 的代碼獨(dú)立為一個(gè)可選模塊,在針對(duì) Google Play 渠道打包時(shí)不包含這個(gè)模塊。
國(guó)內(nèi)開發(fā)者也可以單獨(dú)選擇是否包括這個(gè)模塊。屆時(shí) plus.runtime.install 這個(gè) jsapi 會(huì)一直存在,只是沒有打包 APK 安裝模塊時(shí),調(diào)用 install api 安裝 APK 會(huì)報(bào)錯(cuò)——提示缺少模塊。