可以实现的,二维码包含的信息是由你控制的,对这两个二维码做不同标示,扫描时根据这个标示做个判断就可以实现
10年积累的网站设计、网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有云龙免费网站建设让你可以放心的选择与我们合作。
原因是制作mobileprovision证书时,没有选择in house而是选择了 ad hoc, ad hoc只支持证书绑定的测试设备,inhouse是不限制设备的,任何Ios设备都可以直接安装app,另外替换了证书记得在云端点击“保存”,不保存还是老的证书。
/
// 头文件
// TestProject
//
#import UIKit/UIKit.h
#import "ZBarSDK.h"
@interface yxpQrCode : UIViewController
@end
//
// 实现文件
// TestProject
//
#import "yxpQrCode.h"
#define SCANVIEW_EdgeTop 40.0
#define SCANVIEW_EdgeLeft 50.0
#define TINTCOLOR_ALPHA 0.2 //浅色透明度
#define DARKCOLOR_ALPHA 0.5 //深色透明度
@interface yxpQrCode () ZBarReaderViewDelegate
{
UIView *_QrCodeline;
NSTimer *_timer;
//设置扫描画面
UIView *_scanView;
ZBarReaderView *_readerView;
}
@end
@implementation yxpQrCode
- ( id )initWithNibName:( NSString *)nibNameOrNil bundle:( NSBundle*)nibBundleOrNil
{
self = [ super initWithNibName :nibNameOrNil bundle :nibBundleOrNil];
if ( self ) {
// Custom initialization
}
return self ;
}
- ( void )viewDidLoad
{
[ super viewDidLoad ];
self . title = @"扫描二维码" ;
//初始化扫描界面
[ self setScanView ];
_readerView = [[ ZBarReaderView alloc ] init ];
_readerView . frame = CGRectMake ( 0 , 64 , VIEW_WIDTH , VIEW_HEIGHT - 64 );
_readerView . tracksSymbols = NO ;
_readerView . readerDelegate = self ;
[ _readerView addSubview : _scanView ];
//关闭闪光灯
_readerView . torchMode = 0 ;
[ self . view addSubview : _readerView ];
//扫描区域
//readerView.scanCrop =
[ _readerView start ];
[ self createTimer ];
}
#pragma mark -- ZBarReaderViewDelegate
-( void )readerView:( ZBarReaderView *)readerView didReadSymbols:( ZBarSymbolSet*)symbols fromImage:( UIImage *)image
{
const zbar_symbol_t *symbol = zbar_symbol_set_first_symbol (symbols.zbarSymbolSet );
NSString *symbolStr = [ NSString stringWithUTF8String : zbar_symbol_get_data(symbol)];
//判断是否包含 头'http:'
NSString *regex = @"http+:[^//s]*" ;
NSPredicate *predicate = [ NSPredicate predicateWithFormat : @"SELF MATCHES %@",regex];
UIAlertView *alertView=[[ UIAlertView alloc ] initWithTitle : @"" message:symbolStr delegate : nil cancelButtonTitle : @"取消" otherButtonTitles : nil ];
[alertView show ];
//判断是否包含 头'ssid:'
NSString *ssid = @"ssid+:[^//s]*" ;;
NSPredicate *ssidPre = [ NSPredicate predicateWithFormat : @"SELF MATCHES %@",ssid];
if ([predicate evaluateWithObject :symbolStr]) {
}
else if ([ssidPre evaluateWithObject :symbolStr]){
NSArray *arr = [symbolStr componentsSeparatedByString : @";" ];
NSArray * arrInfoHead = [[arr objectAtIndex : 0 ]componentsSeparatedByString : @":" ];
NSArray * arrInfoFoot = [[arr objectAtIndex : 1 ]componentsSeparatedByString : @":" ];
symbolStr = [ NSString stringWithFormat : @"ssid: %@ /n password:%@" ,
[arrInfoHead objectAtIndex : 1 ],[arrInfoFoot objectAtIndex : 1 ]];
UIPasteboard *pasteboard=[ UIPasteboard generalPasteboard ];
//然后,可以使用如下代码来把一个字符串放置到剪贴板上:
pasteboard. string = [arrInfoFoot objectAtIndex : 1 ];
}
}
//二维码的扫描区域
- ( void )setScanView
{
_scanView =[[ UIView alloc ] initWithFrame : CGRectMake ( 0 , 0 , VIEW_WIDTH, VIEW_HEIGHT - 64 )];
_scanView . backgroundColor =[ UIColor clearColor ];
//最上部view
UIView * upView = [[ UIView alloc ] initWithFrame : CGRectMake ( 0 , 0 ,VIEW_WIDTH , SCANVIEW_EdgeTop )];
upView. alpha = TINTCOLOR_ALPHA ;
upView. backgroundColor = [ UIColor blackColor ];
[ _scanView addSubview :upView];
//左侧的view
UIView *leftView = [[ UIView alloc ] initWithFrame : CGRectMake ( 0 ,SCANVIEW_EdgeTop , SCANVIEW_EdgeLeft , VIEW_WIDTH - 2 * SCANVIEW_EdgeLeft )];
leftView. alpha = TINTCOLOR_ALPHA ;
leftView. backgroundColor = [ UIColor blackColor ];
[ _scanView addSubview :leftView];
/******************中间扫描区域****************************/
UIImageView *scanCropView=[[ UIImageView alloc ] initWithFrame : CGRectMake (SCANVIEW_EdgeLeft , SCANVIEW_EdgeTop , VIEW_WIDTH - 2 * SCANVIEW_EdgeLeft ,VIEW_WIDTH - 2 * SCANVIEW_EdgeLeft )];
//scanCropView.image=[UIImage imageNamed:@""];
scanCropView. layer . borderColor =[ UIColor getThemeColor ]. CGColor ;
scanCropView. layer . borderWidth = 2.0 ;
scanCropView. backgroundColor =[ UIColor clearColor ];
[ _scanView addSubview :scanCropView];
//右侧的view
UIView *rightView = [[ UIView alloc ] initWithFrame : CGRectMake ( VIEW_WIDTH- SCANVIEW_EdgeLeft , SCANVIEW_EdgeTop , SCANVIEW_EdgeLeft , VIEW_WIDTH - 2 *SCANVIEW_EdgeLeft )];
rightView. alpha = TINTCOLOR_ALPHA ;
rightView. backgroundColor = [ UIColor blackColor ];
[ _scanView addSubview :rightView];
//底部view
UIView *downView = [[ UIView alloc ] initWithFrame : CGRectMake ( 0 ,VIEW_WIDTH - 2 * SCANVIEW_EdgeLeft + SCANVIEW_EdgeTop , VIEW_WIDTH , VIEW_HEIGHT-( VIEW_WIDTH - 2 * SCANVIEW_EdgeLeft + SCANVIEW_EdgeTop )- 64 )];
//downView.alpha = TINTCOLOR_ALPHA;
downView. backgroundColor = [[ UIColor blackColor ] colorWithAlphaComponent :TINTCOLOR_ALPHA ];
[ _scanView addSubview :downView];
//用于说明的label
UILabel *labIntroudction= [[ UILabel alloc ] init ];
labIntroudction. backgroundColor = [ UIColor clearColor ];
labIntroudction. frame = CGRectMake ( 0 , 5 , VIEW_WIDTH , 20 );
labIntroudction. numberOfLines = 1 ;
labIntroudction. font =[ UIFont systemFontOfSize : 15.0 ];
labIntroudction. textAlignment = NSTextAlignmentCenter ;
labIntroudction. textColor =[ UIColor whiteColor ];
labIntroudction. text = @"将二维码对准方框,即可自动扫描" ;
[downView addSubview :labIntroudction];
UIView *darkView = [[ UIView alloc ] initWithFrame : CGRectMake ( 0 , downView.frame . size . height - 100.0 , VIEW_WIDTH , 100.0 )];
darkView. backgroundColor = [[ UIColor blackColor ] colorWithAlphaComponent: DARKCOLOR_ALPHA ];
[downView addSubview :darkView];
//用于开关灯操作的button
UIButton *openButton=[[ UIButton alloc ] initWithFrame : CGRectMake ( 10 , 20 ,300.0 , 40.0 )];
[openButton setTitle : @"开启闪光灯" forState: UIControlStateNormal ];
[openButton setTitleColor :[ UIColor whiteColor ] forState :UIControlStateNormal ];
openButton. titleLabel . textAlignment = NSTextAlignmentCenter ;
openButton. backgroundColor =[ UIColor getThemeColor ];
openButton. titleLabel . font =[ UIFont systemFontOfSize : 22.0 ];
[openButton addTarget : self action : @selector (openLight) forControlEvents: UIControlEventTouchUpInside ];
[darkView addSubview :openButton];
//画中间的基准线
_QrCodeline = [[ UIView alloc ] initWithFrame : CGRectMake (SCANVIEW_EdgeLeft , SCANVIEW_EdgeTop , VIEW_WIDTH - 2 * SCANVIEW_EdgeLeft , 2 )];
_QrCodeline . backgroundColor = [ UIColor getThemeColor ];
[ _scanView addSubview : _QrCodeline ];
}
- ( void )openLight
{
if ( _readerView . torchMode == 0 ) {
_readerView . torchMode = 1 ;
} else
{
_readerView . torchMode = 0 ;
}
}
- ( void )viewWillDisappear:( BOOL )animated
{
[ super viewWillDisappear :animated];
if ( _readerView . torchMode == 1 ) {
_readerView . torchMode = 0 ;
}
[ self stopTimer ];
[ _readerView stop ];
}
//二维码的横线移动
- ( void )moveUpAndDownLine
{
CGFloat Y= _QrCodeline . frame . origin . y ;
//CGRectMake(SCANVIEW_EdgeLeft, SCANVIEW_EdgeTop, VIEW_WIDTH-2*SCANVIEW_EdgeLeft, 1)]
if (VIEW_WIDTH- 2 *SCANVIEW_EdgeLeft+SCANVIEW_EdgeTop==Y){
[UIView beginAnimations: @"asa" context: nil ];
[UIView setAnimationDuration: 1 ];
_QrCodeline.frame=CGRectMake(SCANVIEW_EdgeLeft, SCANVIEW_EdgeTop, VIEW_WIDTH- 2*SCANVIEW_EdgeLeft, 1 );
[UIView commitAnimations];
} else if (SCANVIEW_EdgeTop==Y){
[UIView beginAnimations: @"asa" context: nil ];
[UIView setAnimationDuration: 1 ];
_QrCodeline.frame=CGRectMake(SCANVIEW_EdgeLeft, VIEW_WIDTH- 2*SCANVIEW_EdgeLeft+SCANVIEW_EdgeTop, VIEW_WIDTH- 2 *SCANVIEW_EdgeLeft, 1 );
[UIView commitAnimations];
}
}
- ( void )createTimer
{
//创建一个时间计数
_timer=[NSTimer scheduledTimerWithTimeInterval: 1.0 target: self selector:@selector (moveUpAndDownLine) userInfo: nil repeats: YES ];
}
- ( void )stopTimer
{
if ([_timer isValid] == YES ) {
[_timer invalidate];
_timer = nil ;
}
}
- ( void )didReceiveMemoryWarning
{
[ super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end --远标ITJOB
1、方法一:
(1)使用相机自带的扫描二维码功能,首先,打开iphone电源,回到ios的主屏幕界面;
(2)然后在主屏幕界面,从下往上滑动打开“控制中心”;
(3)在“控制中心”找到“二维码扫面”。点击打开;
(4)然后将要扫描的二维码对准摄像头;
(5)扫描完成,就可以选择打开连接了。
2、方法二:苹果手机的QQ、微信等app也具有扫描二维码的功能。
(1)在手机桌面用力按下相应app的图标呼出二级菜单;
(2)在二级菜单选择“扫一扫”即可。
在海韩帝国可以看的,更新的也很快,v+这个321524,在航空公司以及各机票售票处,未能在乘坐飞机后7日内领取行程单的旅客,可以在购票站补打行程单。2、购票后至飞机起飞后的30天内打印行程单服务有效。机场领取行程单的旅客,务必在起飞后30天内领取。3、飞机起飞后的30天以后申请打印行程单服务无效。超过30天无法打印行程单。这时需要联系承运人(航空公司)或购票的销售商协商解决。4、在指定bai的机场柜台行程单领取,一般的航空公司都会在机场设置机行程单领取柜台。5、如有不明白的问题可以咨询机场工作人员,他们会给你详细的解答。1、为保护您的合法权益,在网上预订机票,须注意查看网站上是否具备工商局颁发的网上电子标识,电信主管部门颁发的ICP证号,国际航空运输协会(IATA)颁发的国际证书。2、正规的经营航空客运代理业务的旅du行社或票务代理公司除需有固定的经营场所外,还应具备以下条件:(1)具有'国际航空运输协会'颁发的IATA执照号码。(2)具有民航局颁发的经营航空客运代理业务的许可。只有国内客票代理权的公司不可经营国际票务业务。(3)具有固定的经营场所和民航预订终端系统。(4)具有经过民航和国际航空运输协会培训合格的票务专业人员。RTHTHRTH3、为保证查到正确的票价,请询价时告知准确的去程、回程日期,并要求书面确认报价。4、航空公司会不时推出促销价格和有关信息,敬请经常留意'最新消息'栏目。5、为避免机位紧张时订不到座位,最好尽可能提前将机位订好。预订机位是不收费的,届时如决定不购票可通知订票取消