1

解決できないと思われる問題が発生しました。問題は、特定の番号を呼び出す QR コードを生成することです。番号の形式は *103*14 桁の有効化番号 # で、これを Android QR コード アプリケーションで読み取ると、呼び出しフォームにハッシュ記号 (#) が表示されません。私はそれをグーグルで調べましたが、結論は、Android APIが何らかの理由でQRコードからハッシュ記号を読み取れないということです。Android OS の回避策は、%23 であるハッシュに URI エンコーディングを使用することです。その場合、それは魅力的に機能します。しかし、iOS QRReader アプリケーションで同じ QR コードを読み取ると、%23 がハッシュに変換されず、代わりに 23 が表示されるだけです。これらの問題をすべてカバーするソリューションはありますか? 前もって感謝します!

4

2 に答える 2

3

ハッシュを二重にエンコードする必要があるため、パーセント記号もエンコードされます。

したがって、# は %2523 になります。

この QR コードをスキャンすると、電話ダイヤラーに *#67# が表示されます

URI エンコードされた USSD には QR があります

Zxing に関するこのバグ レポートを参照してください

于 2012-05-15T11:57:00.920 に答える
0

おそらく、文字列をインテントに渡す前にエンコードする必要があります。

String qrCode = "*103*14#";
String uri = Uri.encode("tel:" + qrCode);
Intent intent = new Intent(Intent.ACTION_CALL, uri);
于 2012-05-15T11:40:55.933 に答える