项目中用到二维码扫描以及生成,将zxing导入项目中(import moudle)
一、扫一扫的实现
一、生成二维码的实现
简单的实现,zxing由于包含资源文件不能打包成jar,所以在项目中需要导入moudle
2016年3月2日16:02:48
一、扫一扫的实现
//开启 二维码 扫一扫
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