繁体   English   中英

我的应用扫描二维码后,没有任何反应

[英]After my app scans the QR code nothing happens

我遵循了将zxing集成到我的应用程序中的教程,并且效果很好,现在唯一的问题是,当我扫描qr代码时,什么也没有启动,我是一个完整的newb,有些输入将对您有很大的帮助。 我的Java是:

public class MainActivity extends Activity implements OnClickListener {


private Button scanBtn;
private TextView formatTxt, contentTxt;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    scanBtn = (Button)findViewById(R.id.scan_button);
    formatTxt = (TextView)findViewById(R.id.scan_format);
    contentTxt = (TextView)findViewById(R.id.scan_content);
    scanBtn.setOnClickListener(this);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

public void onClick(View v){
    //respond to clicks
    if(v.getId()==R.id.scan_button){
        IntentIntegrator scanIntegrator = new IntentIntegrator(this);
        scanIntegrator.initiateScan();
        }
    }

public void onActivityResult(int requestCode, int resultCode, Intent intent) {
    IntentResult scanningResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent);
    if (scanningResult != null) {
        String scanContent = scanningResult.getContents();
        String scanFormat = scanningResult.getFormatName();
        formatTxt.setText("FORMAT: " + scanFormat);
        contentTxt.setText("CONTENT: " + scanContent);
        }else{
            Toast toast = Toast.makeText(getApplicationContext(),
                    "No scan data received!", Toast.LENGTH_SHORT);
                toast.show();
            }
    }

}

我想启动浏览器,但是我确定我缺少什么

您实际上从未启动任何结果。 如果您扫描的文字原来是网站链接,则需要启动一个意图以使网络浏览器打开。

在读取结果后的活动结果中,您将执行以下操作:

Intent i= new Intent(Intent.ACTION_VIEW, Uri.parse(<INSERT URL>));
startActivity(i);

从QR代码中获取字符串后,您需要通过以下方式启动浏览器:

String url = "Url String";
Intent myIntent = new Intent(Intent.ACTION_VIEW,
        Uri.parse(url));
try {  
      // Start the activity  
      startActivity(myIntent);
      this.finish();
    } catch (ActivityNotFoundException e) {  
      // Raise on activity not found  
      Toast toast = Toast.makeText(context, "Browser not found.", Toast.LENGTH_SHORT);  
    }  

希望这可以帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM