2015年3月2日 星期一
讓app具有root權限 using iOSOpenDev
首先在這之前要先將Xcode專案轉成iOSOpenDev,這篇~
SpringBoard在開啟app的時候如果發現設定了管理者權限就會閃退,所以直接編譯過去的app正常來說會閃退,只要拿編譯出來的deb檔案在另外安裝就好了
2015年3月1日 星期日
安裝iOSOpenDev
最近突然想到開發Cydia有沒有相關工具結果找到好玩的東西,iOSOpenDev是包裝過後的Theos,而Theos是純文字指令介面不過很少資料就是了
Theos - iPhone Development Wiki
2015年2月3日 星期二
Xcode直接編譯app到實體裝置
一般開發ios app需要將app在實體裝置上測試的話,需要花99鎂購買apple developer但是只有一年時效,很多功能在模擬器上能夠正常執行但不表示實體裝置能夠正常執行,所以這篇就是要給不想花錢的人囉。
2015年2月2日 星期一
2015年1月29日 星期四
安裝 Metasploit
Metasploit是目前滲透測試工具中算是最好用的工具,然後呢,在Mac OSX上安裝非常麻煩,非常麻煩,最麻煩應該是postgreSQL的安裝吧
在他們的安裝的Document裡有提供Mac OSX安裝方式,但是他所提供的安裝script中,如果使用者有安裝Macports的話就無法安裝,雖然可以修改script繞過去,但是以我之前安裝的經驗還是不行
2015年1月27日 星期二
2015年1月26日 星期一
git教學(github、gitlab)
平常用gitlab比較習慣,因為project可以設定private(免費),不過github還是比較多人使用,所以剛好就來學學github怎麼用。
在安裝之前要確定已經安裝Command Line Tools和簽署Xcode的license(Xcode 6.1以下還要安裝Command Line Tools),詳細在這
安裝Xcode後安裝Command Line Tools
安裝Xcode後簽署license
2015年1月25日 星期日
Mac OSX 10.10的sshfs指令
在Mac OSX中需要掛載網路磁碟通常會使用sshfs,但是在OSX 10.10版中無法正常使用,需要使用下面網站提供的SSHFS才能夠正常使用
'https://osxfuse.github.io/'
安裝Homebrew
Homebrew跟Macports基本上功能一樣,差別是Homebrew盡量使用系統內已經安裝的資源,而macports是只使用自己安裝的資源,當然各有優缺點,而我自己比較喜歡Homebrew。
在安裝之前要確定已經安裝Command Line Tools和簽署Xcode的license(Xcode 6.1以下還要安裝Command Line Tools),詳細在這
安裝Xcode後安裝Command Line Tools
安裝Xcode後簽署license
Homebrew官方網站
'http://brew.sh/'
安裝X11(XQuartz)
X11現稱XQuartz是Apple在X Window系統的實作,不會講,詳細自己去看wikipedia~
在OSX 10.8 Mountain Lion之後就已經拿掉X11,所以之後的OSX版本需要自己手動安裝
安裝Macports
Macports功能類似於apt-get和yum,用於編譯、安裝與管理Mac osx中的開放原始碼工具。不過使用上有點麻煩,個人比較喜歡Homebrew。
在安裝之前要確定已經安裝Command Line Tools和簽署Xcode的license(Xcode 6.1以下還要安裝Command Line Tools),詳細在這
安裝Xcode後安裝Command Line Tools
安裝Xcode後簽署license
2015年1月24日 星期六
SyntaxHighlighter - 在blog上將程式碼加上行號和亮高
SyntaxHighlighter用途就是能夠在blog顯示程式碼,效果如下
SyntaxHighlighter官方網站 'http://alexgorbatchev.com/SyntaxHighlighter'
for test code
// // ijtJson.m // Injector // // Created by Qbsuran Alang on 2014/10/23. // Copyright (c) 2014年 Qbsuran Alang. All rights reserved. // #import "ijtJson.h" @implementation ijtJson @synthesize dictionary; - (id)initWithJsonString :(NSString *)json { self = [super init]; if(self && json) { NSData *data = [json dataUsingEncoding:NSUTF8StringEncoding]; NSError *error; self->dictionary = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error]; if(error) { NSLog(@"ijtJosn initWithJsonString: %@", error.localizedDescription); return nil; } } return self; } - (id)initWithFilename :(NSString *)filename { NSFileHandle *fileHandle = [NSFileHandle fileHandleForReadingAtPath:filename]; NSData *data = [fileHandle readDataToEndOfFile]; return [self initWithJsonString:[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]]; } - (NSArray *)getKeys { NSEnumerator * enumeratorKey = [self.dictionary keyEnumerator]; NSMutableArray *array = [[NSMutableArray alloc] init]; //%u5FEB%u901F%u679A%u4E3E%u904D%u5386%u6240%u6709Value%u7684%u503C for (NSObject *object in enumeratorKey) { [array addObject:object]; } return [NSArray arrayWithArray:array]; } - (NSArray *)getValues { NSEnumerator *enumeratorValue = [self.dictionary objectEnumerator]; NSMutableArray *array = [[NSMutableArray alloc] init]; //%u5FEB%u901F%u679A%u4E3E%u904D%u5386%u6240%u6709Value%u7684%u503C for (NSObject *object in enumeratorValue) { [array addObject:object]; } return [NSArray arrayWithArray:array]; } - (NSDictionary *)getDictionary { return self.dictionary; } - (NSUInteger)dataCount { return [self.dictionary count]; } @end
訂閱:
文章 (Atom)