当前位置:  编程技术>移动开发
本页文章导读:
    ▪查询工程中的图片是不是被引用 对于后期优化非常有用        查询工程中的图片是否被引用 对于后期优化非常有用有部分图片是名称一样存放在模块的image文件下与公共的image 文件重复 有的是图片名称一样 文件不一样 xib 中引用的到请用以下命令.........
    ▪ 懒人可以用Automator拔高工作效率        懒人可以用Automator提高工作效率Mac OS里除了Apple Script, 还有一个更简单的自动化工具Automator,恰当运用可以提高工作效率。               下面举一个简单的例子, 比如在Mac OS执行Android模拟.........
    ▪ Objective C TCP 通信实例       Objective C TCP 通讯实例TCP通讯实例 Communicator.h  #import <Foundation/Foundation.h> @interface Communicator : NSObject <NSStreamDelegate> { @public NSString *host; int port; } - (void)setup; - (void)open; - (void)close.........

[1]查询工程中的图片是不是被引用 对于后期优化非常有用
    来源: 互联网  发布时间: 2014-02-18
查询工程中的图片是否被引用 对于后期优化非常有用

有部分图片是名称一样存放在模块的image文件下与公共的image 文件重复

有的是图片名称一样 文件不一样



xib 中引用的到请用以下命令逐一查看排除

grep -i -r --include=*.xib --include=*.m  "line" ./ | grep "line.png"


    
[2] 懒人可以用Automator拔高工作效率
    来源: 互联网  发布时间: 2014-02-18
懒人可以用Automator提高工作效率

Mac OS里除了Apple Script, 还有一个更简单的自动化工具Automator,恰当运用可以提高工作效率。
   

 

 

  
   下面举一个简单的例子, 比如在Mac OS执行Android模拟器,不想用AVD再选对,而是想直接运行我想要的模拟器,可以在命令行执行:
      emulator -avd  avd_name
   
   我比较懒,也不想特意打开AVD或Terminal再执行,而是希望直接从Dock上就可以运行。解决方法就是在Automator。
     1. 打开Automator,  选择Workflow:
      

 

 

    2. 新建一个Run Shell Command,然后设定Shell和具体的指令:
      

 

 

    3. 保存为Application。
       

 

 

     刚刚的指令已经被包装成和一个应用程序一样了。
    4. 然后把它拖到Dock上,需要时候执行一下就可以了。
   
   还有一种情况,我总是要不断的执行一段测试脚本,但需要有指定一个目标目录。只需要在命令设置上选择"Pass Input: as arguments", 如下使用一般的Shell脚本的方式接受参数就可以了:
   

 

 

    使用时将要测试的目录拖到新建的程序上就可以了。
   
   嗯,如此而已!你应该能做得更好!
   
   *将Automator建立的程序统一放置起来,也会更方便调用!
   

 

 

  
   参考:
  
     开发工作中使用的软件列表
     懒人可以用Automator提高工作效率
     使用脚本简化工作
     程序员要学会偷懒---正确运用自动化技术
     如何使用搜索技巧来成为一名高效的程序员

游戏开发论坛:http://jiushun8.com/forum.php?mod=viewthread&tid=2839&extra=page%3D1


    
[3] Objective C TCP 通信实例
    来源: 互联网  发布时间: 2014-02-18
Objective C TCP 通讯实例
TCP通讯实例
Communicator.h 
#import <Foundation/Foundation.h>
 
@interface Communicator : NSObject <NSStreamDelegate> {
	@public
	
	NSString *host;
	int port;
}
 
- (void)setup;
- (void)open;
- (void)close;
- (void)stream:(NSStream *)stream handleEvent:(NSStreamEvent)event;
- (void)readIn:(NSString *)s;
- (void)writeOut:(NSString *)s;
 
@end

Communicator.m
#import "Communicator.h"
 
CFReadStreamRef readStream;
CFWriteStreamRef writeStream;
 
NSInputStream *inputStream;
NSOutputStream *outputStream;
 
@implementation Communicator
 
- (void)setup {
	NSURL *url = [NSURL URLWithString:host];
	
	NSLog(@"Setting up connection to %@ : %i", [url absoluteString], port);
	
	CFStreamCreatePairWithSocketToHost(kCFAllocatorDefault, (CFStringRef)[url host], port, &readStream, &writeStream);
	
	if(!CFWriteStreamOpen(writeStream)) {
		NSLog(@"Error, writeStream not open");
		
		return;
	}
	[self open]; 
	
	NSLog(@"Status of outputStream: %i", [outputStream streamStatus]);
	
	return;
}
 
- (void)open {
	NSLog(@"Opening streams.");
	
	inputStream = (NSInputStream *)readStream;
	outputStream = (NSOutputStream *)writeStream;
	
	[inputStream retain];
	[outputStream retain];
	
	[inputStream setDelegate:self];
	[outputStream setDelegate:self];
	
	[inputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
	[outputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
	
	[inputStream open];
	[outputStream open];
}
 
- (void)close {
	NSLog(@"Closing streams.");
	
	[inputStream close];
	[outputStream close];
	
	[inputStream removeFromRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
	[outputStream removeFromRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
	
	[inputStream setDelegate:nil];
	[outputStream setDelegate:nil];
	
	[inputStream release];
	[outputStream release];
	
	inputStream = nil;
	outputStream = nil;
}
 
- (void)stream:(NSStream *)stream handleEvent:(NSStreamEvent)event {
	NSLog(@"Stream triggered.");
	
	switch(event) {
		case NSStreamEventHasSpaceAvailable: {
			if(stream == outputStream) {
				NSLog(@"outputStream is ready."); 
			}
			break;
		}
		case NSStreamEventHasBytesAvailable: {
			if(stream == inputStream) {
				NSLog(@"inputStream is ready."); 
				
				uint8_t buf[1024];
				unsigned int len = 0;
				
				len = [inputStream read:buf maxLength:1024];
				
				if(len > 0) {
					NSMutableData* data=[[NSMutableData alloc] initWithLength:0];
					
					[data appendBytes: (const void *)buf length:len];
					
					NSString *s = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];
					
					[self readIn:s];
					
					[data release];
				}
			} 
			break;
		}
		default: {
			NSLog(@"Stream is sending an Event: %i", event);
			
			break;
		}
	}
}
 
- (void)readIn:(NSString *)s {
	NSLog(@"Reading in the following:");
	NSLog(@"%@", s);
}
 
- (void)writeOut:(NSString *)s {
	uint8_t *buf = (uint8_t *)[s UTF8String];
	
	[outputStream write:buf maxLength:strlen((char *)buf)];
	
	NSLog(@"Writing out the following:");
	NSLog(@"%@", s);
}
 
@end

StreamExample.m
#import <Foundation/Foundation.h>
 
#import "Communicator.h"
 
int main (int argc, const char * argv[]) {
	NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
 
	Communicator *c = [[Communicator alloc] init];
	
	c->host = @"http://127.0.0.1";
	c->port = 6789;
	
	[c setup];
	[c open];
	
	[pool drain];
	
	return 0;
}

    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

java开发知识 iis7站长之家