0
我想在应用程序扫描条形码时执行一些操作。为此,我需要知道每当我的设备扫描仪扫描条形码。条码包含我想在我的应用程序中使用的字符串。我搜索了很多,尝试使用下面的代码来解决这个问题,但我不知道如果我在正确的轨道上,因为它不工作:如何知道扫描仪是否已在android中扫描条码?
在我的onCreate方法,我注册的广播接收器:
IntentFilter filter = new IntentFilter();
filter.addAction(Intent.ACTION_MEDIA_SCANNER_FINISHED);
filter.addDataScheme("file");
receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
System.out.println("intent action:"+action);
System.out.println("intent recieved");
}
};
getActivity().registerReceiver(receiver, filter);
但我从来没有收到任何东西。任何想法为什么或任何其他解决方案来解决这个问题。提前致谢。
我使用,使用相机时,我正在扫描。现在我正在使用带有扫描仪的Motorola ET1。如果一个EditText被聚焦并且我按下了扫描按钮,那么我得到了该EditText中的信息。我希望我的应用程序能够知道扫描仪何时完成扫描,因此我可以对从条形码获得的信息执行一些操作,而无需按任何按钮。有没有什么办法可以告诉应用程序,扫描已完成,因此我可以在不按下按钮的情况下执行操作ö – Piscean
我明白你在做什么,但我的回答是指出你并不明白那是什么意图。它与条形码扫描仪无关。这是关于媒体库文件扫描仪。您可能可以通过在EditText上添加TextChangeListener或EditorActionListener来完成您想要的操作 – Budius