MS Face API. getFaceServiceClient () является нулем - PullRequest
0 голосов
/ 30 мая 2019

Я создаю приложение для Android, которое использует Face API для проверки того, что 2 фотографии, сделанные с помощью камеры, сделаны одним человеком.

Я уже создал UUID's из 2 изображений и начал процесс проверки с этим кодом.

public void verificar(View view){
    SampleApp sApp= new SampleApp();
    FaceServiceClient faceServiceClient = new 
    SampleApp().getFaceServiceClient();

    ByteArrayOutputStream stream = new ByteArrayOutputStream();
    foto1.compress(Bitmap.CompressFormat.PNG, 100, stream);
    byte[] byteArray = stream.toByteArray();
    rface1 = UUID.nameUUIDFromBytes(byteArray);
    stream = new ByteArrayOutputStream();
    foto2.compress(Bitmap.CompressFormat.PNG, 100, stream);
    byteArray = stream.toByteArray();
    rface2 = UUID.nameUUIDFromBytes(byteArray);
    new VerificationTask(rface1,rface2).execute();
}

Кроме того, это код результата проверки

@Override
protected VerifyResult doInBackground(Void... params) {
    // Get an instance of face service client to detect faces in image.
    FaceServiceClient faceServiceClient = SampleApp.getFaceServiceClient();
    try{
        publishProgress("Verifying...");

        // Start verification.
        return faceServiceClient.verify(
                mFaceId0,      /* The first face ID to verify */
                mFaceId1);     /* The second face ID to verify */
    }  catch (Exception e) {
        publishProgress(e.getMessage());
        //addLog(e.getMessage());
        return null;
    }
}

Когда я запускаю процесс проверки, это исключение всегда выдается

java.lang.NullPointerException: Attempt to invoke interface method 'com.microsoft.projectoxford.face.contract.VerifyResult com.microsoft.projectoxford.face.FaceServiceClient.verify(java.util.UUID, java.util.UUID)' on a null object reference

Итак faceServiceClientявляется нулевым, когда faceServiceClient.Проверка называется, но я не знаю почему.кто-нибудь знает, почему это произошло?Что я должен сделать, чтобы решить эту проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...