Mobile 如何确保我的移动应用程序仅在一部手机上运行

Mobile 如何确保我的移动应用程序仅在一部手机上运行,mobile,licensing,Mobile,Licensing,如何确保我的移动应用程序仅在购买我的应用程序的用户的手机上运行 谢谢。一个主意: 创建“提供注册/解锁应用程序的密钥”功能 向用户索要其手机IMEI号码,同时向其收取申请费用 用IMEI号码对他的密码进行编码 每次启动应用程序时,确保应用程序使用与当前手机IMEI号码兼容的密钥运行 该任务与保护任何其他平台上的应用程序没有区别。解决办法是: 硬件绑定的许可证密钥。对于智能手机,这是IMEI号码(在GSM设备上)或CDMA设备上的相应ID。生成包含IMEI或其CRC32或其他散列的密钥,并在每个应

如何确保我的移动应用程序仅在购买我的应用程序的用户的手机上运行

谢谢。

一个主意:

  • 创建“提供注册/解锁应用程序的密钥”功能

  • 向用户索要其手机IMEI号码,同时向其收取申请费用

  • 用IMEI号码对他的密码进行编码

  • 每次启动应用程序时,确保应用程序使用与当前手机IMEI号码兼容的密钥运行


  • 该任务与保护任何其他平台上的应用程序没有区别。解决办法是:

  • 硬件绑定的许可证密钥。对于智能手机,这是IMEI号码(在GSM设备上)或CDMA设备上的相应ID。生成包含IMEI或其CRC32或其他散列的密钥,并在每个应用程序启动时检查该散列
  • 激活。这意味着应用程序必须连接到服务器以注册自身,然后在每次启动时(或在特定时间间隔内)连接到服务器以确认其有效性。激活也包括绑定到硬件,但在激活的情况下,许可证密钥本身不需要绑定到硬件。在互联网连接的应用程序中,激活非常有效。不过,如果你开发了游戏或生产力工具,那么能够连接到网络的要求可能会分散客户的注意力(我从不安装不应该进入网络但声称需要的Android应用程序)
  • 使用某些不易复制的硬件。这也是对硬件的某种绑定。然而,这种方法并不完全适用于通用智能手机
  • 服务收费,而不是应用收费。这对于作为某些internet服务的客户端的应用程序是很好的。如果您有这样的应用程序,您可以通过用户的登录名/密码对其进行身份验证,并对服务器上的每个(或某些)操作收费。然后用户付费,您就会对推广应用程序而不是复制保护应用程序感兴趣:)

  • 所有这些——Android、iPhone、JavaMe。我的手机目前在安卓系统上。但是,我希望我的应用程序有不同的版本。