1

我有一个带有 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);

我对此进行了测试。它有时也会变成黑屏。

4

0 回答 0