提交 16ca41f3 编写于 作者: 李滨

Merge branch 'demo_bai' into 'master'

fix android demo create engine fail

See merge request !761
...@@ -49,11 +49,14 @@ public class AppModel { ...@@ -49,11 +49,14 @@ public class AppModel {
}); });
} }
public void maceMobilenetCreateEngine(final InitData initData) { public void maceMobilenetCreateEngine(final InitData initData, final CreateEngineCallback callback) {
mJniThread.post(new Runnable() { mJniThread.post(new Runnable() {
@Override @Override
public void run() { public void run() {
JniMaceUtils.maceMobilenetCreateEngine(initData.getModel(), initData.getDevice()); int result = JniMaceUtils.maceMobilenetCreateEngine(initData.getModel(), initData.getDevice());
if (result == -1 && callback != null) {
callback.onCreateEngineFail();
}
} }
}); });
} }
...@@ -72,4 +75,8 @@ public class AppModel { ...@@ -72,4 +75,8 @@ public class AppModel {
}); });
} }
public interface CreateEngineCallback {
void onCreateEngineFail();
}
} }
...@@ -15,6 +15,8 @@ ...@@ -15,6 +15,8 @@
package com.xiaomi.mace.demo; package com.xiaomi.mace.demo;
import android.app.Activity; import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
import android.os.Bundle; import android.os.Bundle;
import android.support.annotation.NonNull; import android.support.annotation.NonNull;
...@@ -23,6 +25,7 @@ import android.view.WindowManager; ...@@ -23,6 +25,7 @@ import android.view.WindowManager;
import android.widget.Button; import android.widget.Button;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.TextView; import android.widget.TextView;
import android.widget.Toast;
import com.xiaomi.mace.demo.camera.CameraEngage; import com.xiaomi.mace.demo.camera.CameraEngage;
...@@ -39,7 +42,7 @@ import org.greenrobot.eventbus.ThreadMode; ...@@ -39,7 +42,7 @@ import org.greenrobot.eventbus.ThreadMode;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
public class CameraActivity extends Activity implements View.OnClickListener { public class CameraActivity extends Activity implements View.OnClickListener, AppModel.CreateEngineCallback {
CameraEngage mCameraEngage; CameraEngage mCameraEngage;
ImageView mPictureResult; ImageView mPictureResult;
...@@ -138,7 +141,7 @@ public class CameraActivity extends Activity implements View.OnClickListener { ...@@ -138,7 +141,7 @@ public class CameraActivity extends Activity implements View.OnClickListener {
private void initJni() { private void initJni() {
AppModel.instance.maceMobilenetSetAttrs(initData); AppModel.instance.maceMobilenetSetAttrs(initData);
AppModel.instance.maceMobilenetCreateEngine(initData); AppModel.instance.maceMobilenetCreateEngine(initData, this);
} }
@Override @Override
...@@ -166,7 +169,7 @@ public class CameraActivity extends Activity implements View.OnClickListener { ...@@ -166,7 +169,7 @@ public class CameraActivity extends Activity implements View.OnClickListener {
public void onCLickItem(String content) { public void onCLickItem(String content) {
mSelectPhoneType.setText(content); mSelectPhoneType.setText(content);
initData.setDevice(content); initData.setDevice(content);
AppModel.instance.maceMobilenetCreateEngine(initData); AppModel.instance.maceMobilenetCreateEngine(initData, CameraActivity.this);
} }
}); });
} }
...@@ -178,8 +181,23 @@ public class CameraActivity extends Activity implements View.OnClickListener { ...@@ -178,8 +181,23 @@ public class CameraActivity extends Activity implements View.OnClickListener {
public void onCLickItem(String content) { public void onCLickItem(String content) {
mSelectMode.setText(content); mSelectMode.setText(content);
initData.setModel(content); initData.setModel(content);
AppModel.instance.maceMobilenetCreateEngine(initData); AppModel.instance.maceMobilenetCreateEngine(initData, CameraActivity.this);
} }
}); });
} }
@Override
public void onCreateEngineFail() {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Error");
builder.setMessage("Failed to create inference engine with current setting!");
builder.setCancelable(false);
builder.setPositiveButton("Quit", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
finish();
}
});
builder.show();
}
} }
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册