2013-04-22 70 views
-2

我開發了一個android應用程序,我想把它給測試人員測試,所以我想爲每個測試人員做幾個特定的​​構建,可以在特定的測試設備上運行,而不是在任何設備上運行。如何構建特定設備的Android應用程序?

原因是當我給測試人員構建我的應用程序時,應用程序只能在他的設備上運行而不是其他人,所以無法在任何其他設備上發佈和運行!

如何保證測試人員不會發布您的應用程序?

+0

您可以在您的應用程序中設置一種'定時炸彈',這樣它就不會在給定日期後運行。這樣,您就不必擔心應用程序會被其他人發佈或分發。 – iTurki 2013-04-22 04:23:53

+0

你想要DRM,這不是一個簡單的修復,不能在StackExchange的幾行代碼中描述。解決問題的最簡單方法是找到值得信賴的測試人員,因爲它足夠簡單,可以反編譯您的字節代碼,剝離出您可能會自行評估的任何保護措施,並無論如何發佈代碼。簡而言之,您不能保證測試人員不會發布您的應用程序。 – MarsAtomic 2013-04-22 16:05:16

回答

0

你說的是特定的設備型號,而不是特定的手機,比如我的口袋裏有三星Galaxy 3或我辦公桌上的Nexus 7,與所有其他三星Galaxy 3和Nexus 7設備,是嗎?

嘗試使用:

android.os.Build.MODEL; 
在您的活動

。此字段將爲您提供手機的型號,如果手機型號錯誤,您可以分支運行或不運行您的代碼。

+0

感謝MarsAtomic,但我想特定的設備不​​具體的模型! – 2013-04-22 04:30:05

0

要做到這一點,你可以從測試儀和在應用程序中查看IMEI號碼獲取設備的IMEI號碼。

這當然有侷限性。它將只需要GSM手機(您可以使用MAC地址代替)。

可獲取設備的IMEI

TelephonyManager manager = (TelephonyManager) context 
        .getSystemService(Context.TELEPHONY_SERVICE); 
      String IMEI = manager.getDeviceId() 

您將需要READ_PHONE_STATE許可

0

,你可以做以下

  • 使用設備的Android編號
  • 配置MAC

所有這些預計對每個設備都是唯一的。

所以每次應用程序運行時,你檢查的數量和比賽。

相關問題