android 二维码的扫描与生成

项目中用到二维码扫描以及生成,将zxing导入项目中(import moudle)
一、扫一扫的实现
//开启 二维码 扫一扫
startActivityForResult(new Intent(mContext, CaptureActivity.class),Constant.SELECT_QRCODE);

在onActivityResult做解析操作

//Constant.SELECT_QRCODE 为标记码,可任意值
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (requestCode == Constant.SELECT_QRCODE) {
            if (resultCode == Activity.RESULT_OK) {
                String cs = data.getStringExtra("result");
                Log.e("---url->", cs);
                if (!cs.equals("") && cs != null) {
                    String userIdString = analysisUrl(cs);

                    if (userIdString != null) {
                       //TODO 这里做跳转操作
                       
                    } else {
                        show("解析信息失败");
                    }
                } else {
                    show("未收到二维码数据");
                }
            }
         }
        }
 /**
  *解析url
  */
 private String analysisUrl(String cs) {
  String string = null;
  if (cs.startsWith("http://taikongdan.taiyiheng.com/1.0/qr?userId=")) {
            string = cs.substring("http://taikongdan.taiyiheng.com/1.0/qr?userId=".length());
        }
        return string;
    }

一、生成二维码的实现

打开二维码页面
 Intent intent = new Intent(UserActivity.this,   App_UserQRActivity.class);
                intent.putExtra("userId", user.getUserId());
                intent.putExtra("nickName", user.getNickName());
                startActivity(intent);


这是App_UserQRActivity的核心代码:

	//一个ImageView用于显示二维码图片
 userImageDetail = (ImageView)findViewById(R.id.user_image_detail);
 userImageDetail.setImageBitmap(QRUtils.createQRImage(url));

下面是布局文件:
<RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_weight="2"
        android:gravity="center" >

        <ImageView
            android:id="@+id/user_image_detail"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@null" />

        <TextView
            android:id="@+id/textview"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/user_image_detail"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="10dp"
            android:text="扫描上面的二维码  加我好友吧"
            android:textColor="@color/text_color_black" />
    </RelativeLayout>

简单的实现,zxing由于包含资源文件不能打包成jar,所以在项目中需要导入moudle


2016年3月2日16:02:48

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值