2012年12月28日 星期五

iOS 6 鬼打牆的 UINavigationController source 問題

錯誤訊息

Push segues can only be used when the source controller is managed by an instance of UINavigationController

下面左邊為主要 vc

裡面第二、第三個按鈕對應到圖中的兩個vc,使用 addsubview 方式貼上處理

一開始為了快速建立,有拉seque 關連,不過後來就使用 IBAction 方式而非 Seuqeready 方式處理

在 iOS 5 中,這樣的方式沒問題

但是在 iOS 6中,切換到這兩個 VC,按下完成按鈕執行 NSData datawithcontentofurl 動作時

會「直接」跳離 app

滴巴戈時,只有出現

Push segues can only be used when the source controller is managed by an instance of UINavigationController

處理了很久一直沒有頭緒

後來打開 storyboard,看到這兩個關連

決定死馬一下

沒想到竟然好了..

特此誌之

PastedGraphic-2012-12-28-12-04.png

2012年12月26日 星期三

iOS in-house 企業佈署相關知識

app 做好後進行封裝

封裝時要使用 enterprise distribution 相關設定

並把產生的 ipa 檔案和 plist 檔案放到相關人員可存取的位置

然後提供如下連結,告知 iDevice 進行安裝

使用此網址通知安裝

itms-services://?action=download-manifest&url=http://example.com/app.plist

itms-services 為 url-scheme, 告知 iOS 啟動安裝服務

action 為動作參數

url 為 plist 位置

伺服器要進行 MIME 設定

.IPA - application/octet-stream

.PLIST - text/plain.

iOS in-house 企業佈署 ipa 儲存修改了

2012年12月26日

使用 Xcode 4.5.2 build for archiving 之後

在 Organizer 中選擇 Distribution 要建立 in-house ipa 版本時

會發現傳統的 share 選項不見了

改成勾選 save for enterprise 建立

2012年12月25日 星期二

iTunes 開啟隱藏的僅啟動模式

iTunes 有隱藏的啟動模式,差別在於啟動模式下,iTunes 啟動 iDevice 完成後會自動退出

作法:找到 iTunes 執行檔

執行 iTunes.exe /setPrefInt StoreActivationMode 1

Type the following command and press ENTER to switch to the PC’s Program Files folder:

cd %programfiles%

Type the following command and press ENTER to turn on activation-only mode: iTunes\iTunes.exe /setPrefInt StoreActivationMode 1

復原

iTunes.exe /setPrefInt StoreActivationMode 0

MAC

iTunes.exe /setPrefInt StoreActivationMode 1

復原

iTunes.exe /setPrefInt StoreActivationMode 0

2012年12月5日 星期三

偏頗觀點:軟體工作者在南部找工作?

Well..

其實我是屏東人

可是目前完全沒有回屏東的打算(除非是靠人脈找到的管理職工作)

原因很多,不只是因為南部薪資少、或(相對北部更)軟體沙漠而已

當然這兩者佔很大因素

我想先從工作本質談起

除非家裡有錢,不然人要工作,這我承認

但是反過來,人活著不是為了工作

我可以接受一天工作 14 小時

但我無法接受每天工作 14 小時只是養活自己

兩者的差別在哪?

差別在於後者根本就是工作動物

不管一個人再厲害,除了可以超光速飛行的超人(有人懂這梗嗎? XD)

一天都只有 24 小時可以用

每天工作14小時,交通再加 1 小時,睡覺 5 小時好了

(請別用我以前一天只睡 3 小時戰我,

這邊是講長期,而非短期,如 2x 歲時代)

留給自己的只有 4 小時不到

這能做什麼?

理論上可以孝敬父母、溝通朋友、看養家庭

實際上呢?早上 8 點工作,晚上 10 點回來

找父母聊天?找網友比較實在

找朋友?找炮友比較快(還硬的起來的話)

看養家庭?找老婆友愛?硬得起來嗎?找小朋友聊天好讓小孩變夜貓子?

幫忙蓋棉被?好讓小孩子長大可以知道晚上有個從未謀面的(親生?)父親幫忙蓋棉被?

講難聽點,在跟老婆聚少離多、一天說不到幾句話,只能吃到他做冷盤晚餐情況下

我對小孩父親是我的這件事情,真沒那麼大信心

簡單來說,一天工作 14 小時這件事情會讓工作者失去幾乎所有的人際關係

大概只剩下幾年碰面幾次的高中同學、國中同學還會跟你聯絡..

其他人..嘿嘿嘿

有個前輩說過,在南部相對容易存錢

儘管薪資少,但生活花費、娛樂開銷也少

加上房價低,相對而言,更容易買到房子(這也是拜北部房價太高、平均薪水差異不夠大所賜)

這是真的

代價是..沒有代價,只是生活只剩下兩點一線

頂多回家路上多幾個熟到可以打折的路邊攤可坐

生活只剩下到公司工作、回(別人的?)家睡覺

朋友?如果還找得到非同事的朋友出來的話,大概就是路邊熱炒喝幾口酒,然後回家發酒瘋打(別人的?)老婆(然後打到變別人的)、打(別人的?)小孩這種小小娛樂吧

同事?同事相處很簡單,偶爾去路邊熱炒喝幾口酒,然後回家發酒瘋打(別人的?)老婆(然後打到變別人的)、打(別人的?)小孩這種小小娛樂吧

其他呢?

(以上都建構在一天工作 14 小時的情況下,並不代表所有南部工作者)

(怎麼有種南部工作者是特殊名詞的感覺 :p)

然後,一天工作 14 小時的情況下

能保證不會中年失業嗎?

萬一中年失業了,14 工作者有什麼機會嗎?

中年失業者通常最大的優勢是經驗(技術純熟度)和人脈

人脈聽起來很棒,如果有錢開公司或去當業務的話

如果是技術職,通常不會擔心中年失業問題,頂多被新公司凹新進員工價碼、拿 18k 薪水

(對於開得出這種薪水的公司,我一向抱持能閃則閃的原則

因為這不是公司,只是一群找不到其他更好工作人員的聚居地

如果公司營運不錯,那表示老闆根本不介意員工死活..

大概就是以前發退休金前就會倒閉換人重開的那一種)

但是,我很擔心的是,14 工作者的技術優勢是否存在

如果是不需要與時俱進的技術,例如木工、水電,通常代表工作 3 年與工作 30 年的純熟度差不多

只剩下經驗優勢,而不當上中階管理以上職位,經驗優勢很難換取對應的金錢報酬(頂多月薪多 1-3k)

如果是需要與時俱進的技術,例如軟體

除非工作需求,14 工作者有時間自我學習和進步嗎?

那樣的14 工作者一定很宅..宅到沒啥人際關係,很可能宅到不用中年就會失業 :p

嗯..等會要去繼續體驗 14 工作者的工作,晚點(還記得的話..)補完

該店的人員都很年輕,比較大的只有兩個人

我想,這也是正常的

這種服務業(咖啡店、門市等)對體力的消耗其實蠻大的

但我覺得消耗更大的是對從業人員的精神

個人會覺得拆成 8-8,之類早班、晚班會比較合理

不過有些老闆大概會覺得工作時間不差這幾小時(雖然他們算薪水時會覺得少這幾小時就該扣錢或扣對應的月薪)

app 大量發送簡訊討論

某案件說明:

希望能設計一個APP發訊軟體,自動搜尋手機名單大量發送簡訊,並強制送出文字簡訊而不需加入好友

網友

感覺上是用來發送垃圾短訊的APP?

個人感想

80% 可能性,剩下 20% 是用了避免每次傳簡訊都要使用者確認的 UX 問題。

傳簡訊確認很煩,尤其是要大量發送時。

以前手機不能安裝程式,只能使用者手動,所以確認發送動作執行者不是問題。

現在能安裝程式,沒人知道是使用者要求或程式自定(應該可以透過特定動作處理就是了..不過..下述),所以 iOS 對這東西擋光光,只能傳送到簡訊頁面由使用者透過系統程式處理,而且一次只能一個

Android 不確定,不過有人想避免這問題的話,我不會驚訝。

只是我會覺得,這問題不值得處理

因為在 Email/FB/line/msn/twitter 風行後,需要大量發送簡訊通知的情況並不多

寫內附美女圖的 email 又方便又能提昇點閱率(?

特殊情況是,當該 App 使用者的內容有即時性需求或基礎架構不足(例如南非之類 3G 建設不足的區域)時,文字簡訊可能就會是比較好的作法。

2012年12月1日 星期六

隨手程式碼 - mobile01.com 方向鍵換頁

結果: https://gist.github.com/4178423

花了兩個小時做的東西

僅適用 chrome

過程說明

想在 m01 上面使用方向鍵換頁的話,需要做到幾件事情

  1. 開啟特定網頁時,加入換頁程式碼
  2. 換頁程式碼會偵測特定按鈕(在此為左右方向鍵)並觸發事件
  3. 根據按鈕,修改網址,並前往新網址

第一件事情使用 chrome 的套件 Personalized Web 達成

這部份主要是需要 inject javascript 能力

其實可以透過其他擴充套件達成

第二件事情,使用 gist 中的程式碼處理

網路上找到的程式碼都使用 document.onkeypress

這招對方向鍵無效(或者是mac比較特別?)

要改成 onkeydown

裡面的eventobj 和 code 看起來很多餘

但是並不能省略

這是我嘗試了半小時的結果

有人有不同想法,且有成功的話,歡迎討論

第三件事情

主要是偵測網址、修改網址並前往

不過前往新網址後,使用 document.onkeydown 會發現在新頁面中程式碼無法觸發

必須要改用 window.onkeydown 才行..

因為卡了以上三個東西

本來估計頂多 20 分鐘處理好的小東西變成 2 小時的工作 orz

世界果然到處是眉眉角角…

追加:

google serach 左右鍵換頁

https://gist.github.com/4179848

使用側邊欄

http://userscripts.org/scripts/review/152796

2012年11月23日 星期五

mac 可以用 keyremap 一鍵切換輸入法

今天看到一篇文章,提到了KeyRemap4Macbook

這是一套可以自訂幾乎所有mac按鍵的套件

安裝之後(需要重開機),可以在偏好設定中找到設定

然後,根據

http://www.think-in-g.net/ghawk/blog/2011/11/os-x-mappging-a-single-key-to-select-input-source/comment-page-1/#comment-3500

的作法,就可以達成使用一顆按鈕切換輸入法的功能

切换到“Misc & Uninstall”页面,然后点击“Custom Setting”中的“Open private.xml”按钮,打开自定义规则文件。

2012年12月2日 修正:

原本作法會影響到keyremap 中的使用 right option + 方向鍵的設定

所以修改為下面三項中的第一項內容,改成使用右邊 shift + option 切換輸入法(需先按下 shift 才有作用)

其他兩項可以去掉

<?xml version="1.0"?>

<root>

<item>

<name>Switch Input Source by right Shift and option</name>

<appendix>Use the right option and right shift to select the next input source</appendix>

<identifier>private.switch_next_input_source_with_right_option_shift</identifier>

<autogen>--KeyToKey-- KeyCode::OPTION_R ,ModifierFlag::SHIFT_R , KeyCode::SPACE, ModifierFlag::OPTION_L | ModifierFlag::COMMAND_L</autogen>

</item>

<item>

<name>Switch Input Source by right option</name>

<appendix>Use the right Option key to select the next input source</appendix>

<identifier>private.switch_input_source_with_right_option</identifier>

<autogen>--KeyToKey-- KeyCode::OPTION_R, KeyCode::SPACE, ModifierFlag::OPTION_L | ModifierFlag::COMMAND_L</autogen>

</item>

<item>

<name>Switch Input Source by right command </name>

<appendix>Use the right Command key to select the next input source</appendix>

<identifier>private.switch_next_input_source_with_right_command</identifier>

<autogen>--KeyToKey-- KeyCode::COMMAND_R, KeyCode::SPACE, ModifierFlag::OPTION_L | ModifierFlag::COMMAND_L</autogen>

</item>

</root>

廢棄

該網頁的寫法在V7.5中不能用,請換成以下內容

<?xml version="1.0"?>

<root>

<item>

<name>Switch Input Source</name>

<appendix>Use the right Option key to select the next input source</appendix>

<identifier>private.switch_input_source_with_right_option</identifier>

<autogen>--KeyToKey-- KeyCode::OPTION_R, KeyCode::SPACE, ModifierFlag::OPTION_L | ModifierFlag::COMMAND_L</autogen>

</item>

<item>

<name>Switch Input Source</name>

<appendix>Use the right Command key to select the next input source</appendix>

<identifier>private.switch_next_input_source_with_right_command</identifier>

<autogen>--KeyToKey-- KeyCode::COMMAND_R, KeyCode::SPACE, ModifierFlag::OPTION_L | ModifierFlag::COMMAND_L</autogen>

</item>

</root>

2012年11月22日 星期四

事緩則圓

有些時候,我們提出了自以為正確,但其實也是正確的見解未必會被接受

這背後的因素未必是對方真的固執或聽不懂..

人的思考有兩種基本的呈現

情感,與理性

理性認同的代表可以理解

情感認同的則是可以接受

兩者都不認同的就不說了

理性認同但情感不認同的,就是可理解但不接受

白話來說,就是覺得應該這麼做但不想做

情感認同的但理性不認同的,就是可接受但不理解

白話來說,就是會做但不覺得應該這麼做

有時候事情就是會這樣..

事緩則圓

提出了理性見解讓對方有時間自己消化

並讓自己的理性去說服情感

在當下提出時,就算理性認同了,情感上未必就會認同,可能是因為面子、反應或任何其他因素

所以拋出完整說明的正確想法,確定對方能理解後,就可以先收手讓對方自行思考、說服自己

太咄咄逼人未必就是好事

可以打電話的相機

緣起

http://www.cool3c.com/article/63876

跟朋友討論這相機時

朋友說如果可以打電話會有興趣..

這點與我認知完全不合 XDDD

所以就開始了認真的討論

以前機種

Sony Ericsson Cyber-shot系列手機

        ▪        2006年7月-K800i

        ▪        2007年2月-K550i

        ▪        2007年4月-K550im

        ▪        2007年5月-K810i

        ▪        2007年10月-K770i K850i

        ▪        2008年-C902 C702 C905

        ▪        2009年-C510 C901 C903

這系列評價不是很好

大概和他的畫素有關.. 8M 只能定位為堪用

一台可以打電話的相機,目標市場在哪?

總有些使用者需要的只是基本手機功能

市面上很多 APP,但真的不是每個人都會用

有些使用者需要的可能只是其中的電話、簡訊、FB

其中,偏好攝影的使用者可能多了照片上傳、分享、濾鏡功能

稍微擴大的話,可能會發現一個大部分時間只需要用到基本電話(電話、簡訊)功能

但是對攝影有偏好,喜歡自拍、分享、編輯相片的使用者群體

(fb、tumblr、instagram 及其他濾鏡-

稍微擴大到使用者最常用 App 的話,可能可以加上 Line、Email 等

這些顧客追尋的是什麼?

一台堪用的電話

簡單/固定的社群應用和少部分的 App (遊戲?)

好用/強大的相機

在 Samsung Galaxy Camera 的基礎上,加入可以打電話的功能會怎樣?

除了第二點之外,應該都能滿足?

而至於第二點,使用內建 App (相關廠商應該會很高興收到授權費?)和觸控螢幕

也許可以讓使用者完成設定,並且在很長一段時間內都不需要再次設定?

2012年11月12日 星期一

普羅米修斯是部爛片..

網路上有些說明普的內容和寓意的,我並不覺得有錯

但是導演手法和劇情還是有許多沒有解釋清楚

不過令我不爽的是裡面的許多設定吐槽點太多了

一部電影最重要的是能自圓其說

科幻設定之類的,劇情能自圓其說就OK了,至於東西怎麼來的,還真的不重要

我可以接受普片中從古文明碎片中找到星系、弄了一台挾帶老人且沒人發現的船飛過去

甚至是弄了那台很雞巴的機器人都可以接受(雖然我還是會吐槽這點 吐舌頭

但是片中牽強、腦殘的片段也未免太多

 

1. 那兩個迷失的人的錄影裝置就算沒人監看,難道不會有錄影嗎?

補充,科學探險隊就不能帶武器?我從沒聽過這種設定阿..

這是人類起源星沒錯,但可不是外婆家

登陸的時候沒有人夾道歡送、張燈結綵,連起碼的智慧生物都沒有

不帶武器?你真以為這顆星球是外婆家啊?

就算是外婆家,這也是 n 千年前的外婆家,裡面的外婆都不知道改朝換代幾次,專門吃外婆的大野狼都不知道生多少小狼了

還不帶武器?

2. 工程師的行為未免太過古怪,開一堆船停在行星上

然後放著那些生化武器(?)不動進入冬眠?

它們冬眠總該有個目的吧?

比如說,大陸在釣魚台上蓋了一個核彈基地並且派駐人員,OK,這可接受

但是把人員冬眠掉?沒留個監視者?或者監視者掛了之後沒人叫醒睡著的人?

這是哪門子的怠忽職守怠掉自己的保命機會?

3. 異形的設定我可以接受,真的可以

就算他們和雄性人類、雌性人類或工程師搞在一起後會產生不同的物種也可以

但是,工程師搞出這種東西後留著幹嘛?

要監視的話,應該在月亮上蓋基地吧?

就算送人類到地球是從那顆星球出發,然後呢?

4. 機器人的行為真的他媽的詭異..

機器人行為三法則有沒聽過?

開發出這麼雞巴表自己人、不聽話的機器人,那老頭還真是自己死了活該

5. 機器人到底是從哪知道看到攻略的?

怎麼第一次進去就可以找到採集點?

6. 第一次開會時,弄了個全景很漂亮

沒人想過隔了 n 光年還可以獲得即時回應很不合科學嗎?

如果是出發前的錄影,那這錄影也太奇怪了吧?

(雖然後來發現那傢伙根本就在船上 XD)

7. 船長很有犧牲精神,good~

不過連原因都沒聽清楚就決定犧牲?

那女的(伊莉莎白)也是個腦殘,只會說你一定要做一定要這麼做,說一句那艘飛船是要去地球破壞,上面裝了很多武器或他要去通風報信之類的話有那麼難嗎?

8. 到底是怎樣的設計會提供船上操作說明給不小心按到鍵盤的人啊..

有人看過進入睡眠模式的電腦,被碰一下鍵盤就出現上一個人如何輸入密碼和輸入那些密碼的影片嗎?

(不過使用音階代替字母組合這設定倒是蠻有趣的

合理推論的話,工程師有可能是使用音階和和弦組成語言並套用到文字

音痴工程師大概和聾子+瞎子差不多了 XD

但是這樣的 UI 介面很難寫教學..只能用影片傳達,而文字相對而言很簡單,紙筆甚至木炭+牆壁都可以用

真要有這種語言的話,應該是文明發展後期演化出來的,不會是原生語言

針對這設定,我只能說很炫、很有意思,不過很不科學

尤其是使用這種介面的工程師基本上和人類很類似,如果是沒有眼睛只有耳朵的種族也許還能有一些討論空間)

9. 那個伊莉莎白,你為何上了逃生倉之後第一件事是拿氧氣罐…

好好的逃生艙不住(章魚明明還被關在裡面),硬是要往外面跑?

你都幾歲了,還在玩離家出走的梗?

10. 迷失的人碰到異形生物

說真的,一開始的好奇接觸行為是可接受的

不過都看到對方有反應了還不節制?

你在路上看到野狗會引誘一下,但是看到它疵牙裂嘴時還會想逗他嗎?

而且這不是看習慣的野狗,是外星生物耶…

話說那個同行(最後跌倒)也是蠻孬的…

2012年11月6日 星期二

windows 8 開發–loadState

原來 LoadState 只能用來記錄從下層回來時的狀態 (選了第五筆紀錄後跳到下一畫面後再回來,第五筆還是選取狀態)

而非再次從上層進入時的狀態 (選了第五筆紀錄後跳到上一畫面後再回來,第五筆紀錄的選取狀態已經被清空)

花了快 5 個小時在找不存在的Bug orz…