【问题标题】:Compiling the apk file at web server在 Web 服务器上编译 apk 文件
【发布时间】:2015-01-07 18:07:06
【问题描述】:

我想创建一个系统,让用户登录到我的网站,然后获得一个链接来下载我的 Android 应用程序的 apk。 在应用程序内部有一个包含用户名的最终字符串,服务器通过该用户名识别应用程序。 为此,我希望我的服务器为每个用户编译一个新的 apk,其中包含用户名。 我不知道如何实现这一点,请帮忙。

edit-基本上问题归结为这个,有没有办法以编程方式将某些文件压缩成.rar。我应该为此使用哪种语言。

【问题讨论】:

  • 每次下载都会编译所有应用程序,但我认为这有企业用途。使用 Gradle。
  • 应用程序已经编译...我只需要在下载前根据用户要求在存档中包含一些文件。不得用于企业利益。
  • apk 已签名,不能修改。所以,你应该每次都重新打包并签名(我说编译但错误)。
  • @OneWay 是否意味着没有办法实现这一点,即为每个用户提供自己的自定义 apk ??
  • 没有。这是可能的。但是由于 APK 已签名,您应该重新构建(增量?)并每次都退出 APK。

标签: php android apk server-side-scripting


【解决方案1】:

摘自Documentation

下图描述了构建和运行应用程序所涉及的组件:

更多详情:Building Your Project with Gradle

【讨论】:

    【解决方案2】:

    只要您不介意花费服务器资源,这是很有可能的,因为系统每次都需要打包整个 apk 并对其进行签名。不确定您在什么环境中编程,例如您是否使用 ionic。

    只需将您的用户名字符串文件存储在 c:\dev\app\www\username.php 之类的地方 - 您可以在运行批处理文件以构建应用程序之前对其进行更新

    batch 类似于

    cd C:\dev\ionic\app\ 
    ionic build --release android
    C:\dev\Java\jdk1.8.0_20\bin\jarsigner -storepass YOURPASSWORD -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore C:\dev\ionic\app\platforms\android\ant-build\myApp-release-unsigned.apk alias_name
    C:\dev\android\sdk\build-tools\android-4.4W\zipalign -f -v 4 C:\dev\ionic\app\platforms\android\ant-build\myApp-release-unsigned.apk myApp.apk
    

    在 php 中使用 system() 运行它,最后你会得到你的 apk,你可以将它发送到你的客户端。这有点令人费解,既然您是如何让用户登录网站的,为什么不反过来让应用登录呢?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多