2017年3月16日 星期四

IOS 如何讓production跟dev同時存在裝置上

並不是一套BundleID

首先,要說明的是沒有辦法透過同一個bundleID做到這件事情,只能用兩套bundle id來完成dev與product同時存在,然後透過Build-Setting去設定參數,讓build dev/store時採用不同的bundle id,如此就能讓兩套同時存在手機上了。

作法:

1. target-> build-setting -> + -> add User-Defined :
  new BUNDLE_ID
  new BUNDLE_NAME

2. target-> info :
  set Bundle name : $(BUNDLE_NAME)
  set Bundle id : $(BUNDLE_ID)


打完收工。

參考資料:
http://blog.xebia.com/run-your-ios-app-without-overwriting-the-app-store-version/




2015年11月9日 星期一

NSLayoutConstraint Error : UIView-Encapsulated-Layout-Height UITableViewCellContentView

在使用SizeClass做UI配置的時候,明明就已經把Constraint都設定好了卻還是會看到Console跑出一堆Error Message勒? 其實大部分都是有些小細節沒修好,僅有少部分是因為Constraint本身上的一些問題.今天要說的就是其中一個:UIView-Encapsulated-Layout-Height


2015年11月6日 星期五

iOS 9 Split View 分割螢幕

再iOS 9當中有兩個比較受關注的新功能,上篇文章已經介紹了[3D Touch],另外一個重點就是多工處理,分割螢幕[Split View],本篇將主要介紹如何完成這個設定.

首先,如果想要你的App支援再分割螢幕使用的話,有個前置條件就是你的UI設計必須使用AutoLayout / SizeClass這兩種方法其中一種,不管你是用code build UI / storyboard,都必須達成這兩個條件其中一個,這是最重要的,完成這一項之後其他的才有意義.


2015年10月26日 星期一

iOS 9 3D Touch simple Demo

隨著iPhone 6s現世,新功能也隨之而來, 其中對於開發者來說影響最深的有兩件事,第一是3D Touch應用,以及iPad Air的子母畫面應用,本篇主要針對3D Touch來做介紹.


2015年8月18日 星期二

Apple WatchKit 相關資料

前段時間很夯的Apple Watch因為工作上的需求最近開始詳細的了解整個運作機制,
試圖在Watch上加入合適的功能項目,為此尋找了些相關Apple Watch的資料,大致上寫個筆記心得讓自己Review一下.

首先Apple Watch在UI上分為三個部分:
1. Interface        - WatchKit Apps
2. Notification  - Receive APNS
3. Glance           - Something like Newstand

2015年5月12日 星期二

UITableViewCell selfSize 愛恨情仇

再iOS提供了一項功能叫做selfSize Classes,multi device UI Design變得簡單起來了
不像以往要做一堆 x/y position calculate,真心覺得這是佛心來著

但如果你的開發版本在iOS 8以下你會發現 TableViewCell沒有selfSize作用?!
是的,沒錯! 這是個Apple已承認的Bug, 所以...恩 iOS 8以下cell還是默默地算吧...

2015年4月22日 星期三

iOS BIG5 TO UTF8 OR UTF8 TO BIG5

最近需要用到傳big5 encoding給server.
但問題是,iOS的string是個UTF8Encoding, 所以要找個方法來把他轉換一下

之前做的都是把抓到的big5 encoding data 轉 NSUTF8Encoding,做法約:


    NSStringEncoding big5 = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingBig5_HKSCS_1999);
    NSString *str = [[NSString alloc] initWithData:input encoding:big5];

如此就可以得到一個UTF8編碼的String