@toshiyuki83 Webサービス更新履歴&技術情報

PHP(FuelPHP)とかJavaScript(TitaniumMobile)とか、Webサービス情報など

error: use of undeclared identifier 'UIRemoteNotificationTypeNewsstandContentAvailability と出るエラー #TitaniumJP (Titanium SDK 2.0.1.GA2)



・環境
Xcode 4.3.2 (以前は4.1)
Titanium SDK 2.0.1.GA2 (以前は1.8.2)
Titanium Studio 2.0
Mac OS 10.7.3 Lion (Snow leopard機にLionを)



Titanium Mobile2.0がリリースされたということで導入。1.8.2時は無事動いたのだが、どこからかのタイミングで下記ののようなエラーがでてビルドできなくなる現象に。



[ERROR] /Users/timothy/Documents/Titanium Studio Workspace/Scratch/build/iphone/Classes/NetworkModule.m:252:44: error: use of undeclared identifier 'UIRemoteNotificationTypeNewsstandContentAvailability' [2]
[ERROR] /Users/timothy/Documents/Titanium Studio Workspace/Scratch/build/iphone/Classes/NetworkModule.m:304:33: error: use of undeclared identifier 'UIRemoteNotificationTypeNewsstandContentAvailability' [2]
[ERROR]
[ERROR] Error: Traceback (most recent call last):
File "/Library/Application Support/Titanium/mobilesdk/osx/2.0.1.v20120410131722/iphone/builder.py", line 1318, in main
execute_xcode("iphonesimulator%s" % link_version,["GCC_PREPROCESSOR_DEFINITIONS=__LOG__ID__=%s DEPLOYTYPE=development TI_DEVELOPMENT=1 DEBUG=1 TI_VERSION=%s %s %s" % (log_id,sdk_version,debugstr,kroll_coverage)],False)
File "/Library/Application Support/Titanium/mobilesdk/osx/2.0.1.v20120410131722/iphone/builder.py", line 1224, in execute_xcode
output = run.run(args,False,False,o)
File "/Library/Application Support/Titanium/mobilesdk/osx/2.0.1.v20120410131722/iphone/run.py", line 41, in run
sys.exit(rc)
SystemExit: 65

※自分の環境ではエラーを回避できたため。上記エラーメッセージは#TIMOB-8769] iOS: App build fails on Snow Leopard/iOS 4.3 configured machine - Appcelerator JIRAからの抜粋です。


※たしかTitanium Studio 2.0、Titanium SDK1.8.2、Xcode4.1時にエラーが最初に出ており(そのときは上記エラーの2.0.1というところは1.8.2でした)、Xcode的なエラーかと思い、Xcode4.3にあげました。しかし、まだエラーが出るので、Titanium SDK 2.0.1.GA2にあげました。しかし、まだエラーで表示したのが、上記のようなエラーでした。(正確にどこからエラーかはわからず、すみません)


エラーメッセージでググったところ、Build Error with Titanium SDK 2.0.1 & iOS SDK 4.2 » Community Questions & Answers » Appcelerator Developer CenterというAppcelerator公式のQ&Aコミュニティがありましたが、ここでも解決策が提示されていません。(私の英語力ではわかりませんでした)


引き続き、探していると、下記のページに解決策がありました。
#TIMOB-8769] iOS: App build fails on Snow Leopard/iOS 4.3 configured machine - Appcelerator JIRA


書いてあるのですが、私のような英語力が乏しい人のために日本語で説明しますと、
1.ASIHTTPRequest.hをMacの検索機能か何かで探す。
2.ASIHTTPRequest.hファイルを開く。
3."#ifndef __IPHONE_3_2"と書いてあるとこがあると思うので、"#ifndef __IPHONE_4_0"の#endifの下に下記コードを挿入する。


#ifndef __IPHONE_5_0
  #define __IPHONE_5_0 50000
#endif


このファイルを保存すると、ビルドできるようになった思いますが、いかがでしょうか。


※注意:この方法だと、clean毎に該当ファイルが消されるので、clean毎に記載しなければならないです。どなたか根本的な解決方法わかる方いらっしゃいましたら、教えていただけると助かります。