iOS实现连接打印机,打印一段字符串

问题描述:我想要再ipad程序里面,用代码给打印机发送一段字符串,然后打印。

具体情况是这样的,现在想要用wifi连接到打印机,然后给打印机发送一个字符串去打印。但是问题是不知道如何连接打印机,也不知道如何给打印机发送消息。其中打印机和ipad在同一个局域网下,想用socket通过打印机的ip地址进行传送要打印的内容。

更多解决方法见: http://ask.csdn.net/questions/910

.h 里面
#import <UIKit/UIKit.h>
#import "AsyncSocket.h"

@interface ViewController : UIViewController<AsyncSocketDelegate>
{
    AsyncSocket *asyncSocket;
}

@end



.m里面
#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    //    NSError *err = nil;
    //    if(![asyncSocket connectToHost:@"192.168.1.105" onPort:18011 error:&err])
    //    {
    //        asyncSocket = [[AsyncSocket alloc] initWithDelegate:self];
    //
    //        [asyncSocket setRunLoopModes:[NSArray arrayWithObject:NSRunLoopCommonModes]];
    //
    //        if (![self SocketOpen:@"192.168.1.105" port:18011])
    //        {
    //            NSMutableString *sendString=[NSMutableString stringWithCapacity:1000];
    //            [sendString appendString:@"非警务健身房"];
    //            NSData *cmdData = [sendString dataUsingEncoding:NSUTF8StringEncoding];
    //
    //            [asyncSocket writeData:cmdData withTimeout:-1 tag:0];
    //        }
    //        NSLog(@"Error: %@", err);
    //    }
}

-(IBAction)haha:(id)sender{
    asyncSocket=nil;
    NSError *err = nil;
    if(![asyncSocket connectToHost:@"192.168.1.105" onPort:18011 error:&err])
    {
        asyncSocket = [[AsyncSocket alloc] initWithDelegate:self];

        [asyncSocket setRunLoopModes:[NSArray arrayWithObject:NSRunLoopCommonModes]];

        if (![self SocketOpen:@"192.168.1.105" port:18011])
        {
            NSMutableString *sendString=[NSMutableString stringWithCapacity:100000];
            [sendString appendString:@"Socket测试成功!!!!"];
            NSData *cmdData = [sendString dataUsingEncoding:NSUTF8StringEncoding];

            [asyncSocket writeData:cmdData withTimeout:-1 tag:0];
        }
        NSLog(@"Error: %@", err);
    }
}
- (void)onSocket:(AsyncSocket *)sock didConnectToHost:(NSString *)host port:(UInt16)port
{
    NSLog(@"onSocket:%p didConnectToHost:%@ port:%hu", sock, host, port);
    [sock readDataWithTimeout:1 tag:0];
}
-(void) onSocket:(AsyncSocket *)sock didReadData:(NSData *)data withTag:(long)tag
{

}
- (void)onSocket:(AsyncSocket *)sock didSecure:(BOOL)flag
{
    NSLog(@"onSocket:%p didSecure:YES", sock);
}
- (void)onSocket:(AsyncSocket *)sock willDisconnectWithError:(NSError *)err
{
    NSLog(@"onSocket:%p willDisconnectWithError:%@", sock, err);
}
- (void)onSocketDidDisconnect:(AsyncSocket *)sock
{
    //断开连接了
    NSLog(@"onSocketDidDisconnect:%p", sock);
}
- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
}
- (void)viewDidUnload {
    asyncSocket=nil;
}
//打开
- (NSInteger)SocketOpen:(NSString*)addr port:(NSInteger)port
{
    if (![asyncSocket isConnected])
    {
        [asyncSocket connectToHost:addr onPort:port withTimeout:-1 error:nil];

        NSLog(@"connect to Host:%@ Port:%d",addr,port);
    }
    return 0;
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值