我有一个带有 QR 码扫描的 android 应用程序。在我安装 GMD Hide Bar 之前一切正常。
成功扫描二维码后,屏幕将完全变黑。但是我的应用程序继续以黑屏运行,因为我能听到声音。我必须单击设备上的电源按钮两次(关闭屏幕一次并再次打开),然后我才能再次看到屏幕。
由于它们单独工作,所以我不确定是什么原因造成的。这是二维码扫描器扫描代码并退出时的代码,这是屏幕变黑的时刻。
private final Handler mUnityHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
try {
Class<UnityPlayer> c = com.unity3d.player.UnityPlayer.class;
Method method = c.getMethod("UnitySendMessage", new Class[] { String.class, String.class, String.class });
method.invoke(null, "CodeScannerBridge", "onScannerMessage", mDataStr); // reveiver null
// because
// UnitySendMessage
// is
// static
} catch (NoSuchMethodException e) {
e.printStackTrace();
return;
} catch (Exception e) {
e.printStackTrace();
return;
}
finish();
}
任何想法?
编辑它不会发生 100% 的时间,但经常发生。我还有另一个功能:
mHandler.postDelayed(new Runnable() {
public void run() {
finish();
}
}, 10000);
我对此进行了测试。它有时也会变成黑屏。