cordova检测应用程序是否从Google Play下载

时间:2014-12-15 23:36:04

标签: android cordova

我正在制作将在Google Play上销售的Cordova 4.0 Android应用,我希望防止非法使用它(例如阻止某人从系统中提取APK并重新分发)

这样做的一种理论方法是检查用户启动应用程序时,他确实从Google Play下载了它(而不是侧载)。我甚至不确定这是否可行,或者是否有另外一种做这样的事情。

在其他情况下有效的一种方法是在访问应用程序时使用require某种登录方式,但在这种情况下,我无法做到这一点。任何意见,将不胜感激!

3 个答案:

答案 0 :(得分:0)

Google提供了一种实施验证/许可的方法: http://developer.android.com/google/play/licensing/index.html

看看这是否是你需要的!

答案 1 :(得分:0)

一个建议是那些连接到服务器的应用程序来获取一些数据。

应用验证令牌

  
      
  • 生成编码的64位长令牌并存储在设备和设备上。服务器也是。这将是每个应用程序的唯一标记
  •   
  • 每当应用程序尝试连接到服务器时,它都会发送设备令牌详细信息。服务器需要在完成请求之前对其进行验证。
  •   
  • 在特定事件上,服务器可以为设备生成新令牌。
  •   

同样,设备令牌可以映射到服务器端的用户或应用程序。

令牌可以携带一些与应用相关的信息,例如

  
      
  • 前4或6位数表示应用程序大小
  •   
  • 第二个数字块可以表示用户特定或设备或其他一些细节
  •   
  • 或其他块可以保留应用内容修改日期
  •   

如果有任何更改,服务器可以验证应用程序大小,上次应用程序内容修改日期等。

通常建议在提交之前对应用资源进行uglify,模糊处理和最小化。

答案 2 :(得分:0)

您可以使用包管理器类来确定应用的来源(目前仅检测到Google或亚马逊)

您可以类似地使用提供相同信息的Google Analytics。

这非常简洁,因为Android存储了每个软件包的来源,允许应用程序知道它们的来源,以防止盗版和旁加载。

如果你总是发布谷歌或亚马逊,那就太棒了。如果您侧载您的应用程序,则无用。

相关问题