Archive for the Category: Mac OS X

ERROR: SQLite database is malformed 的解决方法

原文地址:http://froebe.net/blog/2015/05/27/error-sqlite-database-is-malformed-solved/ //检查数据 sqlite> pragma integrity_check; Error: database disk image is malformed //把数据dump出来 sqlite> .mode insert sqlite> .output mydb_export.sql sqlite> .dump sqlite> .exit //备份数据库 mv mydb.db mydb.db.original //导入数据 sqlite3 mydb.db < mydb_export.sql //重建索引 sqlite> analyze; sqlite> .exit

Also posted in linux Leave a comment

Numeric Character Reference转NSString

在处理数据的时候,有时候会遇到 &# 开头的数据,例如Σ那么这个是 Numeric Character Reference编码。 NCR编码是由一个与号(&)跟着一个井号(#), 然后跟着这个字符的Unicode编码值, 最后跟着一个分号组成的, 如: &#nnnn; 或者 &#xhhhh 其中, nnnn是字符编码的十进制表示, 而hhhh是字符的16进制表示. 在ios中处理这种编码有两种方法,一种使用NSAttributedString的方式,这种比较简单,但是处理极慢。另外一种就是自己写编码转换。 两种实现的代码如下: -(NSString *)toUnicodeString { NSMutableString *srcString = [[NSMutableString alloc]initWithString:self]; if ([srcString containsString:@”&#”]) { [srcString replaceOccurrencesOfString:@”&#” withString:@”” options:NSLiteralSearch range:NSMakeRange(0, [srcString length])]; NSMutableString *desString = [[NSMutableString alloc]init]; NSArray *arr = [srcString componentsSeparatedByString:@”;”]; for(int i=0;i<[arr count]-1;i++){ NSString *v = [arr objectAtIndex:i]; […]

Also posted in App Leave a comment

mac版andriod studio 打开即崩溃问题的解决

在mac上安装最新的andriod studio后,打开即崩溃,log如下: Internal error. Please report to https://youtrack.jetbrains.com java.lang.RuntimeException: com.intellij.ide.plugins.PluginManager$StartupAbortedException: Fatal error initializing ‘org.intellij.images.fileTypes.impl.ImageFileTypeManagerImpl’ at com.intellij.idea.IdeaApplication.run(IdeaApplication.java:178) at com.intellij.idea.MainImpl$1$1$1.run(MainImpl.java:52) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:312) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:738) at java.awt.EventQueue.access$300(EventQueue.java:103) at java.awt.EventQueue$3.run(EventQueue.java:699) at java.awt.EventQueue$3.run(EventQueue.java:697) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:708) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:362) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138) at java.awt.EventDispatchThread.run(EventDispatchThread.java:91) Caused by: com.intellij.ide.plugins.PluginManager$StartupAbortedException: Fatal error initializing […]

Leave a comment

sqlite3 支持中文全文搜索

  sqlite3 自带了全文搜索的功能FT3和FT4,但很遗憾的是不支持中文分词。 在github上找到一个支持中文分词的类库,主要思路就是将自定义的分词器嵌入到sqlite中,项目地址:https://github.com/haifengkao/SqliteSubstringSearch 核心代码如下: //获取分词器 get_character_tokenizer_module(&ptr); // register character tokenizer, note that you need to register it everytime the database is opened registerTokenizer(db, token_name, ptr); 注册好之后就可以使用match语法进行中文全文搜索了 SELECT * FROM docs WHERE docs MATCH ‘”lin”‘; 该项目中使用的中文分词器算法为MMSEG

Leave a comment

将你的mac os x 10.7 升级到10.8

随着iphone5 和ios6 的推出,xcode的版本也升级到了最新的4.5. 由于xcode4.5 不能在os x 10.7.x版本上安装,所以只能升级到osx 10.8 官方升级的渠道是通过AppStore下载更新,需要128¥,经过我的测试如果你直接下载osx 10.8的安装文件是可以直接安装的,不会验证你的AppStore账户,也就是说不用花钱即可升级。 升级前请在apple网站查询你的mac电脑是否支持osx 10.8系统,另外升级前请备份数据,以免造成丢失。

Leave a comment

ArcGIS runtime for iOS 读取shape File 以及Cluster代码

大家可以在 github 上下载 https://github.com/barrycug/shapeFileRead  

Also posted in ArcGIS API for iOS, iOS, iPad, iPhone4 Leave a comment

在Mac OS Lion 中显示Library文件夹

在在Mac OS Lion 中Library文件夹是默认不显示的,这对普通用户来说是有好处的可以防止用户误操作删除Library文件夹,但对于iOS的开发者来说是非常麻烦的,特别是ArcGIS Runtime For iOS的开发者,因为 ArcGIS Runtime For iOS会默认安装的Library目录下,当手工配置工程文件,添加framework的时候不能访问Library是很痛苦的。 下面提供一种方法,将Library目录显示在当前User的目录下。 在终端执行下面的命令即可 chflags nohidden ~/Library/   如果想隐藏,则执行下面的命令 chflags hidden ~/Library

Also posted in ArcGIS API for iOS, iOS, iPad, iPhone4 Leave a comment

推荐2个Mac OS X上的JSON工具

1 visual JSON 能够将JSON串以列表的方式展示,方便对JSON数据的解析。 2 JSONModeler 可以解析JSON串生成JSON的格式,并且直接生成Obj-c的类实现文件,这个在处理属性非常多的JSON串的时候比较有用。   在 mac appStore 里面直接搜索上面两款软件即可下载,都是免费应用

Also posted in iOS, iPad, iPhone4 Leave a comment

使用xcrun打包iOS应用

XCode 默认编译出来的是appName.app 包,而iphone,ipad的安装文件是ipa文件。 将.app包打包成ipa最简单的方式是将appName.app 拖放到itunes中,然后在itunes的相关目录中找到appName.ipa,但这样测试的时候没生成一个版本都有重新做一遍。 使用xcrun命令可以帮我们自动完成打包工作,可以方便的测试,并且可以指定签名,生成不同的版本。 当然对于提供给越狱用户的应用也很有意义。 xrun的使用方法如下: /usr/bin/xcrun -sdk iphoneos PackageApplication -v “${RELEASE_BUILDDIR}/${APPLICATION_NAME}.app” -o “${BUILD_HISTORY_DIR}/${APPLICATION_NAME}.ipa” –sign “${DEVELOPER_NAME}” –embed “${PROVISONING_PROFILE}” 当然你可以把上面的命令添加到XCode build Phase中,项目编译完成自动打包。

Also posted in ArcGIS, ArcGIS API for iOS, iOS, iPad, iPhone4 Leave a comment

在UIToolbar中添加title

在iOS开发中,有时候会遇到需要在UIToolbar上添加Title的情况,类似于UINavigationController 的title。 下面的代码会使用UIBarButtonItem alloc 的 initWithCustomView方法来添加一个UILabel作为Title的载体。   UIBarButtonItem * spaceItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil]; UILabel *titleLabel = [[UILabel alloc] initWithFrame:CGRectMake(0.0 , 11.0f, 120, 21.0f)]; [titleLabel setFont:[UIFont fontWithName:@”Helvetica-Bold” size:18]]; [titleLabel setBackgroundColor:[UIColor clearColor]]; [titleLabel setTextColor:[UIColor colorWithRed:255.0/255.0 green:255.0/255.0 blue:255.0/255.0 alpha:1.0]]; [titleLabel setText:@”bookmark”]; [titleLabel setTextAlignment:UITextAlignmentCenter]; UIBarButtonItem *titleButtonItem = [[UIBarButtonItem alloc] initWithCustomView:titleLabel]; [titleLabel release]; UIToolbar * toolBar=[[UIToolbar alloc] […]

Also posted in ArcGIS API for iOS, iOS, iPad, iPhone4 Leave a comment