从两个项目更新一个 APK

Update one APK from two projects

我正在使用 WLanguage (WinDev Mobile) 开发 Android 应用程序。现在,我想用另一个 language/technology 重新开发应用程序:React Native。我将我的 APK 存储在私人服务器上。要更新应用程序,用户在其设备上打开现有应用程序,下载新的 APK,然后更新开始。

我的问题是:我必须做什么才能确保我使用 React Native 创建的 APK 会被检测为来自使用 WinDev Mobile 创建的 APK 的更新?

我希望最终用户更新现有应用程序而不是安装新应用程序。

谢谢

有三项强制要求和一项可选要求:

  1. 应用程序更新必须在 AndroidManifest.xml
  2. 中使用相同的 package 名称
  3. 应用程序必须使用相同的加密密钥 + 证书进行签名(通常您拥有密钥库文件形式的密钥,例如 .ks.jks.bks + 密码)
  4. versionCode 必须高于上一次基于 WLanguage 的版本中的“版本代码”编号,否则 Android 可以 reject the update because it considers it a downgrade

可选:

主要 activity 的 class 名称应保持不变。否则所有在其启动器上创建快捷方式的用户都将丢失该快捷方式。

要获取它,请参阅 AndroidManifest.xml 您上一个基于 WLanguage 的版本

<activity android:name="<classname>" ... />
    <category android:name="android.intent.category.LAUNCHER"/>` 
    ...