2016-04-20 2 views
2

Я хотел реализовать API защищенной сети для проверки состояния устройства. Один из самых простых методов, который я нашел, - это вспомогательный класс безопасности, который делает реализацию такой простой github.com/scottyab/safetynethelper. Я скопировал весь класс из safetynetlib и добавил их в свой код. Я следовал способ имплантации, но я получаю ошибку код
final SafetyNetHelper safetyNetHelper = new SafetyNetHelper(BuildConfig.API1);
Ошибка помощника API Safetynet

public boolean safetynet() 
    { 
     safetyNetHelper.requestTest(getApplicationContext(), new SafetyNetHelper.SafetyNetWrapperCallback() { 
      @Override 
      public void error(int errorCode, String msg) { 
      //handle and retry depending on errorCode 
     } 
     @Override 
     public void success(boolean ctsProfileMatch) { 
      if(ctsProfileMatch){ 
       safetynet=true; 
      }else{ 
       safetynet=false; 
      } 
     } 
    }); 
    return safetynet; 
    }` 

04-20 22: 32: 50,950 28741-28741/com.aashish.smart Д/SafetyNetHelper: apkDigest: IQUb5ULuwdbqOwpQn3jZev2EGXcjtk/yGYUvk1c64F8 = 04-20 22: 32: 51.028 28741-28741/com.aashish.smart V/SafetyNetHelper: подключены сервисы Google для игр 04-20 22: 32: 51.028 28741-28741/com.aashish.smart V/SafetyNetHelper : running SafetyNet.API Test 04-20 22: 32: 54.499 28741-28741/com.aashish.smart D/SafetyNetResponse: decodedJWTPayload json: {"no сть ":" tnd1YpjORIX4teJEd7LuigDWNhWkF6s4T7Ay811BxsM = ​​" "timestampMs": 1461171774655, "apkPackageName": "com.aashish.smart", "apkDigestSha256": "IQUb5ULuwdbqOwpQn3jZev2EGXcjtk/yGYUvk1c64F8 =", "ctsProfileMatch": правда, "расширение":" CQ6MIM + qMkMv», "apkCertificateDigestSha256": [ "PHKalK4AF5EmDbPL5eBQS9EZJVPkgp06cr64rVQ7B7w ="]} 04-20 22: 32: 54,500 28741-28741/com.aashish.smart Е/SafetyNetHelper: недействительный apkCertificateDigest, локальная/ожидаемая = [MIIDizCCAnOgAwIBAgIEPIOxdDANBgkqhkiG9w0BAQsFADB2MQswCQYDVQQGEwJJTjETMBEGA1UECBMKVGFtaWwgTmFkdTEQMA4GA1UEBxMHQ2hlbm5haTEOMAwGA1UEChMFU21hcnQxEzARBgNVBAsTClRlY2hpbmljYWwxGzAZBgNVBAMTEkFhc2hpc2ggVml2ZWthbmFuZDAeFw0xNjA0MTkxMzM2MzdaFw00MTA0MTMxMzM2MzdaMHYxCzAJBgNVBAYTAklOMRMwEQYDVQQIEwpUYW1pbCBOYWR1MRAwDgYDVQQHEwdDaGVubmFpMQ4wDAYDVQQKEwVTbWFydDETMBEGA1UECxMKVGVjaGluaWNhbDEbMBkGA1UEAxMSQWFzaGlzaCBWaXZla2FuYW5kMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnbvJLdKZi8Nf96wNSVdJR/bh7Y0s6jv7AFQGcrR73rMTB/7EJyH9hbl4L5 + U1mrfVodM + J3s/A7LD1gXnMwhsV46t V9ZijkVwT9guxXnUaWPSv2khh5tvpJ9Sj9kyUcOyelDz5iIhK5vP2ipx6ktETIeXv97iKKmHp3vJ7/gFAVsVtkIRQ + 6hLo25AN + OPZE9qH8TsnCqIK + + OsD bF56/dMlhhE63Sy4ixEKZIC5b3RkUjJbuC67GS7hgq0EwoVwJ1lX99WgoLAYJq7hQm1FB3Ns + x1rkZ5 + XYxt9ZCdUJbJQAFa15t9SumHDp3/yB2uaMtvju6xFTpkoaQo6cbaZwIDAQABoyEwHzAdBgNVHQ4EFgQUZnYr1WkTZPKm5/g783K/vDwrr8EwDQYJKoZIhvcNAQELBQADggEBAAx5ToAMW6nlkXwQ5S3oIeQ66TCzBJtLjHQ> IG6eWNkmNZYXuEj14nqWrSM + AniDcW3U/NwROXOERZfvtBiiwuy0Oc8GG31VmYAd6jgdkfsXfd + 96wZxqH8PRtq3m1tjXYGb9Kg1CM1oDdN5H6xtqjU24nSpQEWWs6THuWHA1LEsAnnO0JM3lm0ltBOuIGJtWBd5S6tHMgi4U + m1z/oJAW0HAyWwbuwy7/YP1uEKlEEM669bUYG6iQ4dE3cIB5guZF2qMjwPKscW9bRjoviTgJUGmmVRdpd1Dk/OOZFUEK4A + ii5c7SLW2e // QoN3WV30zNHJArCvFfTGRbeZpwOl4Z4 =] 04-20 22: 32: 54.500 28741-28741/com.aashish.smart E/SafetyNetHelper: недействительный apkCertificateDigest, response = [PHKalK4AF5EmDbPL5eBQS9EZJVPkgp06cr64rVQ7B7w =] 04-20 22: 32: 54.657 28741-4205/com.aashish.smart E/AndroidDeviceVerifier: проблема проверка JWS Messag е: https://www.googleapis.com/androidcheck/v1/attestations/verify?key=A....................................0 java.io.FileNotFoundException: https://www.googleapis.com/androidcheck/v1/attestations/verify?key=A.....................................0 на com.android.okhttp.internal.huc.HttpURLConnectionImpl.getInputStream (HttpURLConnectionImpl.java:238) в com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getInputStream (DelegatingHttpsURLConnection .java: 210) на com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getInputStream (HttpsURLConnectionImpl.java) в com.aashish.smart.AndroidDeviceVerifier $ AndroidDeviceVerifierTask.doInBackground (AndroidDeviceVerifier.java:113) в com.aashish .smart.AndroidDeviceVerifier $ AndroidDeviceVerifierTask.doInBackground (AndroidDeviceVerifier.java:82) на android.os.AsyncTask $ 2.call (AsyncTask.java:295) на java.util.concurrent.FutureTask.run (FutureTask.java:237) на android.os.AsyncTask $ SerialExecutor $ 1.run (AsyncTask.java : 234) at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1113) at java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.Java: 588) в java.lang.Thread.run (Thread.java:818)

полный журнал: Pastebin (точка) ком/YXkS7NgW
может кто-то помочь мне выяснить, что ошибка я я не могу найти. или есть ли какой-либо другой учебник для меня, чтобы работать над защитой сети API

ответ

0

Я также изучаю решение для этого, и в настоящее время я решил «FileNotFoundException» для URL-адреса.

Разрешение: Вы должны создать проект на консоли Google API, если у вас его нет, и включить API проверки устройств Android.

Создайте «Ключ сервера» и оставьте поле IP пустым, чтобы иметь возможность подключения из мобильного приложения.

Это будет делать это (:

Я все еще работаю, как решить проблему несоответствия apkCertificateDigest

Смежные вопросы