QRコードスキャンを備えたAndroidアプリケーションがあります。GMD Hide Bar をインストールするまで、すべて正常に動作します。
QR コードの読み取りに成功すると、画面が完全に黒くなります。しかし、音が聞こえるため、アプリは引き続き黒い画面で実行されます。デバイスの電源ボタンを 2 回クリックする必要があります (画面を一度オフにしてから再度オンにするため)。その後、画面が再び表示されます。
それらは個別に機能するため、何が原因かはわかりません。これは、QR コード スキャナーがコードをスキャンして終了したときのコードで、画面が真っ暗になった瞬間です。
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);
私はこれをテストしました。時々黒い画面にもなります。