|
|
|
|
@ -25,6 +25,7 @@ import androidx.core.content.ContextCompat;
|
|
|
|
|
import androidx.recyclerview.widget.LinearLayoutManager;
|
|
|
|
|
import androidx.recyclerview.widget.RecyclerView;
|
|
|
|
|
|
|
|
|
|
import com.google.zxing.integration.android.IntentIntegrator;
|
|
|
|
|
import com.smartlibrary.R;
|
|
|
|
|
import com.smartlibrary.android.ai.VoiceService;
|
|
|
|
|
import com.smartlibrary.android.data.DataManager;
|
|
|
|
|
@ -1611,13 +1612,17 @@ public class MainActivity extends AppCompatActivity {
|
|
|
|
|
|
|
|
|
|
private void startScan(int requestCode) {
|
|
|
|
|
try {
|
|
|
|
|
Intent intent = new Intent("com.google.zxing.client.android.SCAN");
|
|
|
|
|
intent.putExtra("SCAN_MODE", "QR_CODE_MODE");
|
|
|
|
|
startActivityForResult(intent, requestCode);
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
IntentIntegrator integrator = new IntentIntegrator(this);
|
|
|
|
|
integrator.setDesiredBarcodeFormats(IntentIntegrator.QR_CODE);
|
|
|
|
|
integrator.setOrientationLocked(false);
|
|
|
|
|
integrator.setBeepEnabled(true);
|
|
|
|
|
integrator.setPrompt("对准图书二维码进行扫描");
|
|
|
|
|
integrator.setRequestCode(requestCode);
|
|
|
|
|
integrator.initiateScan();
|
|
|
|
|
} catch (Throwable t) {
|
|
|
|
|
new AlertDialog.Builder(this)
|
|
|
|
|
.setTitle("未找到扫码应用")
|
|
|
|
|
.setMessage("请先安装支持二维码扫描的应用(如 ZXing Barcode Scanner),然后重新尝试扫码借阅/还书;或在图书列表中手动操作。")
|
|
|
|
|
.setTitle("扫码功能不可用")
|
|
|
|
|
.setMessage("初始化内置扫码功能失败,请检查相机权限,或在图书列表中手动操作借阅/还书。")
|
|
|
|
|
.setPositiveButton("确定", null)
|
|
|
|
|
.show();
|
|
|
|
|
}
|
|
|
|
|
|