分類彙整: ios

Waiting For Review

Waiting For Review……終於呀..

第一個App 終於送審了….
這一次用 phonegap 做第一個 iOS App 遭遇到了滿多問題的….有機會的話會再整理一下這次踩到的屎們 XD

iOS Playing Audio In background

1.
在 Info.plist加上 “Required background modes” ( array )
Key => Item 0, Value => App plays audio

2.
在 AppDelegate.h 加上
#import <AVFoundation/AVFoundation.h>

3.
在 – (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
加上
/* Playing music in background START */

AVAudioSession *audioSession = [AVAudioSession sharedInstance];
BOOL ok;
NSError *setCategoryError = nil;
ok = [audioSession setCategory:AVAudioSessionCategoryPlayback error:&setCategoryError];

/* Playing music in background END */

這樣就可以了…

ref.
http://stackoverflow.com/questions/12770487/html-5-audio-mp3-file-not-playing-back-when-iphone-locked-using-phonegap-2-1-0-a

iPhone/iPod Touch: application executable is missing a required architecture. At least one of the following architecture(s) must be present: armv6

如果在 Xcode ORganizer 上 Validate 發生
iPhone/iPod Touch: application executable is missing a required architecture. At least one of the following architecture(s) must be present: armv6
的錯誤的話

可以參考
http://stackoverflow.com/questions/4198676/warning-iphone-apps-should-include-an-armv6-architecture-even-with-build-config/6833556#6833556
這篇在 Targets->Build Settings 底下的 Architectures 把 Release 加上 armv6
然後要是一樣還是沒過的話
請檢查 Targets->Build Settings 底下的 Valid Architectures 一樣加上 armv6
這樣應該就會過了…
不過這樣可能會有非常非常多的 Warnings……

所以請回頭檢查你的 Targets->Summary->Deployment Target 是多少的版本…
我原本的版本是 4.2…, 在我把 Deployment Target 改成 5.0 後, 上面文章說的所有設定都不用動…用原本的設定, validate 就會過了…

我猜想會有這樣的錯誤應該是因為 Deployment Target 要符合的版本太久..所以須要 armv6, 來符合一些較久之前的 Devices ??