[心得] 蝦米鍵盤目前送審情況

看板Liu (無蝦米輸入法)作者 (高級外勞)時間10年前 (2014/10/04 06:22), 10年前編輯推噓43(4304)
留言47則, 43人參與, 最新討論串1/4 (看更多)
各位版友好,相信很多人關心蝦米鍵盤送審情況 最近一次送審是周二,今天再次被reject,理由實在是讓我哭笑不得 以下附上App Review Team Reject Reason,中文翻譯以及採取行動 ----- 2.3 ----- We still find that your app did not achieve the core functionality described in your marketing materials or release notes, as required by the App Store Review Guidelines. 您的app還是有核心功能不完整啊~~ Your app has the UIFileSharingEnabled key set to true in the Info.plist, but this feature is not functional. 您的app中啟用了UIFileSharingEnabled功能但是沒有作用(這完全看不懂 When file sharing is enabled, the entire Documents folder is used for file sharing. Files that are not intended for user access via the file sharing feature should be stored in another part of your application's bundle. If your application does not require the file sharing feature, the UIFileSharingEnabled key in the Info.plist should not be set to true. 這段不重要就不翻了 *** 發生原因與採取行動 基本上這個UIFileSharingEnabled功能就是讓使用者可以在iTunes中向app 存文件,這個要開了,在iTunes裡有個File Sharing使用者就可以把檔案拉 進app中。而我使用這個功能是為了讓使用者可以自行加字加詞。我在蝦米 鍵盤中提供了一個預設的字碼檔,然後我把這個字碼檔從使用者無法存取的 地方複製到這個File Sharing功能可以存取的地方,這樣使用者才可以下載、 自行加字加詞,然後再上傳回app中,重新載入對照表這樣。 所以我完全不能理解app review說的這功能不能用是怎麼回事。 目前我為了不去跟他們吵架,我先把這個功能拿掉,也就是說蝦米鍵盤第一 版沒辦法自行加字加詞了,第二版上架時我會去跟他們吵架。 基本上內附的字碼表應該蠻夠用,不夠用的請先用快速詞彙頂著先。 ----- 25.5 ----- Also, we still find that your keyboard extension ceases to function when used without network access, which does not comply with the App Store Review Guidelines. 您的app在沒有網路的情況下無法使用(明明就可以) Specifically, your keyboard extension requires Allow Full Access turned on in order to function which is not in compliance. The keyboard extension should still function without Allow Full Access turned on. 原來是因為蝦米鍵目前如果沒有啟用「允許完整取用」的話,你按任何鍵 他只會叫你去啟用「允許完整取用」而不會輸出任何字。 *** 發生原因與採取行動 這部份有點複雜,我盡量說的簡單點。 首先各位要先明白iOS 8第三方鍵盤,其實實質上是2個app,一個是你安裝蝦 米鍵盤後手機上會出現蝦米鍵盤的圖示,就像一般app一樣,這個叫作hosting app,然後你進入設定->鍵盤,會看到蝦米鍵盤,這個叫作keyboard extension. 簡而言之,這個問題是hosting app和keyboard extension交換資料時出現的問題。 Apple預設值是hosting app和keyboard extension是不能互相存取資料的。 如果需要存取資料,那麼就必須開啟「允許完整取用」。 而Apple App Review Guideline中說第三方鍵盤必須在「不允許完整取用」的情 況下仍然可以運作。這對中文輸入法就有點苛求了,原因如下。 中文輸入法和英文輸入法最大的不同點,就是中文輸入法必須查碼,而 英文輸入法不用。英文輸入法按鍵上的文字就是輸出的文字,最多是判斷要大 寫還是小寫。但是中文輸入法呢,像嘸蝦米,首先我們必須要有一個對照表, 也就是字碼表,來轉換一組英文字串輸出一個中文字(例如COFU對照到'蝦'), 而最大的問題就是字碼表本身是文字檔,程式中是沒法直接拿來搜的(硬要說 可以也是行啦,但是耗時良久),所以我必須在hosting app中先把字碼檔拿 來跑一次,然後把每個對照歸類,也就是同樣的字碼放在一起這樣,然後存成一 個資料結構(目前用的是map,最早的版本用的是Prefix Tree,但有點慢),再 把這個資料結構存到一個hosting app和keyboard extension都可以存取的地 方(叫作NSUserDefaults),之後在鍵盤中,使用者打字時我就不用每個字都去 查原始字碼檔(這樣很慢),而是從NSUserDefautls中把那個資料結構拿出來, 從這裡面去查。 之所以不能在keyboard extension作這項轉換的動作是因為鍵盤本身常常會重 新啟動,像是如果記憶體不足,或是你換去不用鍵盤的app,有時鍵盤會自動 重新啟動,而轉換的動作,就40000字的字碼檔來說,大約需要5秒,這個時間 如果是在hosting app中,應該還算可以接受,但是如果你每打一個字都要等 5秒,大概沒人可以接受。所以說這個轉換動作必定是要在hosting app中作的, 也就是說如果不允許完整取用,鍵盤就沒有對照表用,自然就無法輸出中文。 我採取的行動是修改程式碼,變成如果沒有允許完整取用,那就直接輸出英文。 --------- 歉意滿滿分隔線 --------- 以上,為了給期盼蝦米鍵盤上架的同學們一個交代,被拒的理由、發生的原因、 以及已採取的行動茲略述於上。 新修改完的版本今天之內會再次送審,目前Apple Review的速度好像變快很多, 周二送的今天就審了,所以期望4天內會有結果。 再次還是得道歉一下,讓各位久等,有些規定實在是沒遇到不知道... 再次還是得感謝一下,目前有參加封閉測試的朋友反應好像都還可以,我真的 很開心。 這大概是我上PTT十多年來打最長的文章... 有任何意見請推文,寄我信箱,po我blog都可以 以上文章沒有藏頭~~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 24.5.187.134 ※ 文章網址: http://www.ptt.cc/bbs/Liu/M.1412374926.A.634.html

10/04 06:25, , 1F
辛苦了!@@
10/04 06:25, 1F
※ 編輯: IMPOSSIBLEr (24.5.187.134), 10/04/2014 06:26:27

10/04 06:52, , 2F
good job
10/04 06:52, 2F

10/04 07:06, , 3F
加字詞這種功能暫時不重要,只要能夠正確打中文就好了
10/04 07:06, 3F

10/04 07:15, , 4F
辛苦了~~~ 感謝~
10/04 07:15, 4F

10/04 07:51, , 5F
辛苦了
10/04 07:51, 5F

10/04 08:05, , 6F
辛苦了
10/04 08:05, 6F

10/04 08:57, , 7F
加油!
10/04 08:57, 7F

10/04 08:58, , 8F
辛苦了!
10/04 08:58, 8F

10/04 10:31, , 9F
現在開始懊惱,當初沒有跟上測試版…
10/04 10:31, 9F

10/04 11:23, , 10F
辛苦了!
10/04 11:23, 10F

10/04 11:51, , 11F
辛苦了,我不是打純蝦米,只能等你加上加字功能再用1
10/04 11:51, 11F

10/04 11:55, , 12F
另有UrKeyboard和字流鍵盤已上架但不如蝦米鍵盤好用
10/04 11:55, 12F

10/04 11:59, , 13F
加油!!!
10/04 11:59, 13F

10/04 12:33, , 14F
加油加油,辛苦了:)
10/04 12:33, 14F

10/04 12:43, , 15F
衝啊!加油!
10/04 12:43, 15F

10/04 16:18, , 16F
太厲害了!話說一定要上架才能用嗎?
10/04 16:18, 16F

10/04 16:41, , 17F
謝謝!辛苦了!!!
10/04 16:41, 17F

10/04 16:55, , 18F
加油!辛苦了
10/04 16:55, 18F

10/04 18:36, , 19F
太感謝了~~~ 你的app是我轉ios的最大動力!
10/04 18:36, 19F

10/04 20:20, , 20F
有點厲害...
10/04 20:20, 20F

10/04 22:26, , 21F
辛苦了,最近升iOS沒弄蝦米打字都覺得好殘廢啊....
10/04 22:26, 21F

10/04 23:08, , 22F
good job!!!
10/04 23:08, 22F

10/04 23:57, , 23F
加油!一定可以的!
10/04 23:57, 23F

10/05 07:18, , 24F
加油!!這是我升級IOS的唯一目的啊
10/05 07:18, 24F

10/05 13:44, , 25F
真的是一波三折耶,辛苦你了
10/05 13:44, 25F

10/05 15:39, , 26F
先做簡單版是正確的策略,先推出能滿足多數需求的主功能
10/05 15:39, 26F

10/05 17:28, , 27F
辛苦了!!謝謝!
10/05 17:28, 27F

10/05 19:00, , 28F
推推推!
10/05 19:00, 28F

10/05 19:50, , 29F
我為了無蝦米而買iphone!!!!快通過審查吧!!!
10/05 19:50, 29F

10/06 13:21, , 30F
辛苦了..
10/06 13:21, 30F

10/06 17:46, , 31F
加油, 就等您開發出來才可以升IOS8
10/06 17:46, 31F

10/07 01:55, , 32F
辛苦了!
10/07 01:55, 32F

10/07 04:38, , 33F
推! 加油!
10/07 04:38, 33F

10/07 17:02, , 34F
推推推!辛苦了,加油!!
10/07 17:02, 34F

10/07 22:26, , 35F
辛苦了!
10/07 22:26, 35F

10/08 03:47, , 36F
我也為了蝦米終於改用iphone了。加油加油!
10/08 03:47, 36F

10/08 09:22, , 37F
好久呀... 原以為很快能用上才更新IOS8,結果....
10/08 09:22, 37F

10/08 09:53, , 38F
期待中 希望進度能超前 加油
10/08 09:53, 38F

10/08 12:12, , 39F
幫集氣~
10/08 12:12, 39F

10/08 16:25, , 40F
八號了Orz
10/08 16:25, 40F

10/08 20:01, , 41F
真的等好久
10/08 20:01, 41F

10/09 06:37, , 42F
辛苦了!
10/09 06:37, 42F

10/09 13:43, , 43F
加油!!!!!辛苦了
10/09 13:43, 43F

10/09 20:40, , 44F
等蝦米出才更新ios8
10/09 20:40, 44F

10/09 21:24, , 45F
加油!!會在store購買支持的!!!
10/09 21:24, 45F

10/14 10:49, , 46F
太棒了,我一定會買。請問一下外部藍芽鍵盤是否可正常用?
10/14 10:49, 46F
不支援,不過是Apple不支援~~ ※ 編輯: IMPOSSIBLEr (24.5.187.134), 10/14/2014 17:17:30

11/11 21:29, , 47F
支持
11/11 21:29, 47F
文章代碼(AID): #1KBo6EOq (Liu)
文章代碼(AID): #1KBo6EOq (Liu)