エラー」タグアーカイブ

X-C0DE,今日のエラー、setValue:forUndefinedKey、[GADObjectPrivate changeState:]、does not have an identifier

X-C0DE,今日のエラー、setValue:forUndefinedKey、[GADObjectPrivate changeState:]、does not have an identifier

(1)No visible @interface for ‘PickerView2Controller’ declares the selector ‘loadSql:tableName:jamleNumber:outPutArray:’

ヘッダーに宣言していませんでした。

(2)
Terminating app due to uncaught exception ‘NSUnknownKeyException’, reason: ‘[ setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key backImage.’

@propertyとストーリーボードのオブジェクトが紐付けされていませんでした。
名称を変更すると、ヘッダーにドラッグしたプロパティは自動では更新されませんので、再度紐付けが必要になります。

(3)Admob [gadbanner_ loadRequest:request]; でエラー
Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘-[GADObjectPrivate changeState:]: unrecognized selector sent to instance 0xbe16c70’

>-ObjC to the Other Linker Flags of your application target’s build setting:
X-CODEの設定がされていません。何度も忘れてしまいます。

(4)UIPickerViewの文字の行間、が10行くらい空いてしまう。
画像。
次の行との間に10行くらい改行はいったようにみえるピッカー、本当は次の行が表示されていなければならないのに、隙間空間が異様に挿入されたようになってしました。

前回作成したPJと同じように作成していて変な行間が新規に作成PJで表示されてしまいました。
同じ、コードを書いているはずなのに???

原因は不明。
対策:同じコードを書いているつもりで何かが抜けているかもしれません。正常に表示されているコードを丸丸コピーしてみます。

>解決しました。
一応、再度UIPIKCERオブジェクトを削除して新規に作成しましたが、同じ現象。ということで、コードの機才が悪いと言うことで、コピーしました。
>原因は不明です。

(5)ワーニング ストーリーボード
warning: Unsupported Configuration: Scene is unreachable due to lack of entry points and does not have an identifier for runtime access via -instantiateViewControllerWithIdentifier:.

>解決、ストーリーボードの各種Viewコントーラーにstoryboard IDを設定するとワーニングが解消されます。

★アイフォンアプリの開発XCode今日のエラーの対処、Navigationナビゲーションコントローラーのエラー、 unrecognized selector sent to instance というエラーが多くて対処中、CoreDataによるデータベースはプロジェクトでテンプレートを指定して作成する

アイフォンアプリの開発で今日のエラー、ナビゲーションコントローラーのエラー、 unrecognized selector sent to instance というエラーが多くて対処中

iPhoneアプリ開発中はさまざまなエラーが発生します。できるだけ、その都度、どうやったのかをメモしています。
そうすることで、すぐにエラーに対処でき、悩まずに済みますし、開発期間を短縮できるし、ストレスも小さくできます。

記憶が薄れそうなので、CoreDataコアデータ、データベースについて記載すると、コアデータを使用したアプリは、プロジェクトで先にテンプレートを指定したほうが開発が楽になります。他のテンプレートを指定したあとで、CoreDataの記載をするとエラーが多発してしまい時間がかかり、結局、コアデータのテンプレートを使用して開発しました。(2013年12月10日追記)

(1)NSMutableArrayの配列が正常に取得できない、範囲外の配列を取得しようとした

プロパティでstrongではなく、weakにしていた。
weakをstrongにして、配列のオブジェクトの値を正常に取得できました。

・NSMutableArrayのエラー、初期化を忘れているとコンパイルエラーがなくても、間違っている。初期化忘れがないかをチェックしましょう。
[[NSMutableArray alloc]init];

(2)intをNSNumberに変換したい

int n=10;
NSNumber *num=[NSNumber numberWithInt:n];

NSNumberをintとして扱うときは
n=[num intValue];
とします。

(3)ナビゲーションコントローラーのエラー

‘NSInvalidArgumentException’, reason: ‘-[ResultViewController viewControllers]: unrecognized selector sent to instance 0x11a5e950’

ナビゲーションコントローラーがないのに、ナビゲーションコントーラー用のコードを書いていました。
ナビ−ゲーションコントローラーがあるときの値を渡すとき
[c]
UINavigationController *navCon=segue.destinationViewController;
ResultViewController *rv=[navCon.viewControllers objectAtIndex:0];
rv.youSelectNumber=[NSNumber numberWithInt:iselectAnswer];
[/c]

[c]
ResultViewController *rv=segue.destinationViewController;
rv.youSelectNumber=[NSNumber numberWithInt:iselectAnswer];
[/c]
ナビゲーションコントローラーがないときはシンプルです。

(4)admobが表示されない[GADObjectPrivate changeState:]: unrecognized selector sent to instance

というエラーは、ビルドセッティングを入れれよいだけでした。
以前作業したときはあったような気がしましたが、もしかすると、X-CODEのバージョンアップで解除されてしまった?

BuildSetting->Linking->Other Linker Flags
-ObjC
をRelease and Debugに入れました。
とりあえず、OKですが、
実はテーブルビューでスクロールをすると広告がセル一緒に移動してしまうのです。
ということはテーブルビューではAdmob広告は使えないか、他のテーブルで設定しなければなりません。

(5)Core Data、エンティティエラー、CoreDataによるデータベースはプロジェクトで指定して作成する

reason: ‘+entityForName: nil is not a legal NSManagedObjectContext parameter searching for entity name

シングルビューでプロジェクトを作成し、後で、coreDataを追加したものです。
エンティティネームが間違っているかと思いましたが、正しい。
後入れ、CoreDataは結構面倒ですね。だからみんなさきに指定して作るんですね。
とりあえず、さきにEmptyプロジェクトにして作り直してみます。

>未解決ですが、解決としては、Emptyプロジェクトにして作り直したほうが早い

(5-2)再現性あり。

Emptyで作り直して、問題なかったのですが、また再現しました。
*** Terminating app due to uncaught exception ‘NSInvalidArgumentException’,
reason: ‘+entityForName: nil is not a legal NSManagedObjectContext parameter searching for entity name

まず、アプリを削除して、クリーンを実行しました。
その後、次の5−3のエラーが発生

(5−3)

reason: ‘*** -[__NSArrayM objectAtIndex:]: index 0 beyond bounds for empty array’
データをリセットして、初期状態になったので、
配列数が0になったと思います。
配列数が0のときに、配列の値を取得しないようにしました。
またエラーが発生したので、よくみたら
AppDelegateしたプロパティを
self.appとしました。
グローバル変数としたものを
@property(strong,nonatomic)NSNumber *nowNumber;//NSInteger
をweakにしたら、エラーが表示されず。
@property(weak,nonatomic)NSNumber *nowNumber;//NSInteger
しかし、エラーにならずとも、値がリセットされていました。値なしです。
そこで、retainにしてみました。
するとOKでした。
どうやら、AppDelegateのグローバル変数はretainが良さそうです。

そのほか、managedObjectContextが作成されていないみたいだったので、AppDelegate.h,mに設定しました。しかし、これでもだめ。
やはり、AppDelegateしたプロパティを
self.appとしました。OKです。

(6) nil エラー

reason: ‘Cannot create an NSPersistentStoreCoordinator with a nil model’

現在のビュークラスから次のビュークラスへ移動のときに、次のビュークラスでエラーがあって
呼び込めていないことがありました。そのため、次のクラスの怪しい箇所をコメントにしました。

(7)reason: ‘Pushing a navigation controller is not supported’

pushがだめならとmodalに変更しました。

なお、このnot supportedの場合、ナビコントローラーを交互に入れていたので(必ず一組で作成)、その1組のうちのナビコントローラーを削除して、組み直すとpushでも可能になります。
ここら辺がやってみないとわからないトライアンドエラーです。

(7−2)

Property implementation must have its declaration in interface ‘ResultViewController’
.mで、@synthesizeのところで改行を入れたから、OKでした。なぜ?

(8)Core Dataエラー

Unresolved error Error Domain=NSCocoaErrorDomain Code=134100 “The operation couldn’t be completed. (Cocoa error 134100.)

新しく、CoreDataにエンティティを追加したり、アトリビュートを追加したときに実行するとエラーが起きます。
1.クリーンを実行して
2.この場合は、シミュレータのアプリを削除すればよいみたいです。
なお登録したデータが消えるかもしれないので、すでに登録して必要なデータは、保持した方がよいでしょう。テスト用でも面倒だったりするので。

(9)タブバーでのワーニングログ、

動作について今のところ支障がない。
Unknown class AAAViewCotroller in Interface Builder file.
タブバーを使用して、画面を切り替えるとログが表示、実行に問題はないけど、ちょっとログがでてしまうのが気になるところ。
>未解決、重要性が低い

(9)admobエラー、リンカーエラー

reason: ‘-[GADObjectPrivate changeState:]:
>X-CODEの環境設定で、Other Linker Flagsに -ObjCを追加

(10)

reason: ‘Unacceptable type of value for attribute: property = “number”; desired type = NSNumber; given type = __NSCFString; value = mas**.’

>未解決

(11)map の検索入力で半角英を入力したときにエラー

-[MapViewController tableView:numberOfRowsInSection:]: unrecognized selector sent to instance 0xac6d150
*** Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘-[MapViewController tableView:numberOfRowsInSection:]: unrecognized selector sent to instance 0xac6d150’

>- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
を追加しました。これは、サーチした後にテーブルビューが表示されるものです。
書籍には記載されていないもので、記載ミスでしょうか。

(12)画面遷移でのエラー

-[NSURLResponse intValue]: unrecognized selector sent to instance 0xac65570
*** Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘-[NSURLResponse intValue]: unrecognized selector sent to instance 0xac65570’

ボタンをタップして次の画面に移動しないときがあって、必ず発生するエラーではない。3回に1回程度発生するという変なエラー。
NSURLResponse intValueを設定した覚えはない。ということは、それを使ってるメソッドか何かがどこかにあって、それが使っていると言うことですかね?

このように、必ず発生しないときは、発生手順をメモしながら原因を究明していきます。
環境は、ストーリーボード、coreDataを使用している。

>プロパティ変数のretainで解決しました。weakにして、retainでエラーがなくなりました。(5−3)での記載が詳細になります。

(13)NSDateはnilで判定

NSDate関連のエラーで、NSDateがnilでした。アウトプットはnullとでますが、
NSDate *date;
if(date==nil)
で判定します。

iPad 、アイフォンのストーリボードとiPadのストーリーボードの共存

アイフォンとiPadで同じパーツを使用するときで、同じクラスを使用するとき、ヘッダーファイルのプロパティをiPadのストーリーボードのパーツに紐付けします。
これだけで良いのです。
新しく、iPadのストーリーボードからヘッダーファイルへ紐付けする必要はありません。
つまり、すでに既存のヘッダーファイルのプロパティを利用できるのです。
これは便利です。アイフォンアプリとiPadアプリの2つのアプリを作成時間は意外にも時間がかからないのかもしれません。

(1)reason: ‘-[__NSCFString substringWithRange:]: Range or index out of bounds’

範囲外の値を入力していたので、範囲を小さくしました。

(2)reason:‘[ setValue:forUndefinedKey:]: this class is not key value coding-compliant

reason: ‘[ setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key imageViewSmall_iPad.’

アイフォンのストーリーボードからiPadのストーリーボードにコピペして、それを共通のビュークラスに紐付けしました。
そして、この紐付けが不要なのに、そのままにしていました。
shows connections inspectorで、びっくりマークになっている箇所を削除しましょう。
アイフォンと同じパーツを使うのであれば、ヘッダーファイルからストーリーボードのiPadのパーツへ紐づければ良いのです。ヘッダーファイルの該当するプロパティの左にある二重丸からiPadのストーリーボードのパーツへドラッグします。
この場合は、ヘッダーファイルからストーリーボードへつなぎます。いつものストーリーボードからヘッダーファイルへの向きと異なります。
たったこれだけです。iPadも意外と楽ちんです。

開発したアプリ、弁理士短答試験過去問題記録ノートの紹介

アプリ紹介リンク

このようにして開発したアプリが弁理士短答試験過去問題記録ノートです。
iOS7 iPhoneアプリ(4作目)申請からリリース状況のまとめ 2013年9月、弁理士短答試験過去問題記録ノート
アドモブの広告をつけています。

他のフレームワークについて

関連リンク

Unityでの開発状況2014年Unity4.5.5

今日のエラー tree.hがないといわれて、libxmlを追加したらArgument list too longエラー

今日のエラー tree.hがないといわれて、libxmlを追加したらArgument list too longエラー

サンプルコードをダウンロードしてコンパイルすると、警告とエラーが表示されました。
そこで、

Xcode4でlibxmlをインクルードする際の注意点(外部サイト)

を参考にして、

(1)Link binary With Librariesでlibxmlを追加し、

(2)「Build Setting」→「Search Pass」→「Header Search Paths」でPathに$(SDK_DIR)/usr/include/libxml2 を指定

すると、

Argument list too long: recursive header expansion failed at /Applications/Audacity/help/manual/m/images/0/08.
引数が長すぎる。
と言われても、こちらがしていしているわけではないのに、
しらべると
なにやら、パスを短くするようにしたらよいみたいな英文が発見されるも具体的な対処が見つからず。再帰が何とかという英文もあったがそのときは意味不明。

そこで、パスを設定した先ほどのところの設定をみると、recursive(再帰)、non(再帰しない)とあったので、再帰しないNon-recursiveを選択。

「Build Setting」→「Search Pass」→「Header Search Paths」でPathに$(SDK_DIR)/usr/include/libxml2 を指定のところで、no-recursiveを選択すると、エラーがなくなりました。

X-CODE4.6.2です。

前回のエラー

アイフォンアプリ開発、今日のエラー、AdMob、表示、非表示でエラーになります。

アイフォンアプリ開発、今日のエラー、AdMob、表示、非表示でエラーになります。
シーンが切り替わるたびにAdMobウィンドウを消して、再表示をしたいと思いました。
onExitにAdMobの削除関連のコードを記載したのですが、シーンが切り替わるとしばらくしてクラッシュします。
シーンを切り替えるときに、直前の場所に削除関連のコードを記載してOK、クラッシュ無し。

それとも、一度Admobを表示させたら、シーン毎に削除させる必要が無くて、そのままでもよかったのかな。

つまり、一度Viewを追加したら、そのままにしておけばよいということだろうか。

よくよく考えれば、AdMobが原因と言うよりは、addSubviewを連続して追加していることに問題がありそうです。

前回のADMOBエラー関連

objective-C、XCODE,今日のエラー、Instance variable

objective-C、XCODE,今日のエラー、Instance variable

Instance variable ‘helpSprite’ accessed in class method

インスタンス変数を使ってクラスメソッドにアクセスしているからやめなさい。

Help.hに宣言したhelpSpriteをHelp.mのクラスメソッド(+)で使ってエラー
続きを読む

今日のアイフォンアプリ開発、cocos2d のエラー、Enumeration values ‘NSTextAlignmentJustified’

今日のアイフォンアプリ開発、cocos2d のエラー、Enumeration values ‘NSTextAlignmentJustified’

cocos2d-iphone-1.0.1/tests/PerformanceTestsプロジェクトで
PerformanceParticleTestを実行したエラーです。

FontLabel.m、FontLabelStringDrawing.mのファイルで、

Enumeration values ‘NSTextAlignmentJustified’ and ‘NSTextAlignmentNatural’ not handled in switch
とうのが、エラーとして表示されました。
該当のSwitch文に
default:break;を追加すれば、OK。

参考サイト
[cocos2d] xcodeを4.5にした時に出てくる警告の解消方法

今日のエラー、アイフォンアプリ、cocos2d-iphone v2.1-rc1でAdmob広告が表示されない。 Must set the rootViewController property エラー|重複エラー

前回のエラーPCH file built from a differentエラーはクリーンでOK。

(1)AdMobエラー
原因は、cocos2d のバージョンによるものです。
解決は4月23日現在、その後改善

cocos2d: cocos2d-iphone v2.1-rc1だと、ダメです。
ver2.0では、正常に広告が表示されます。
なにやら、Viewの仕組みが変わってしまったようですね。
実機で表示されていれば良いのですが、実機での確認はまた、AppleIDを登録することになるので面倒なので、もうちょっと待つことにします。

コンソールに表示されたエラー

To get test ads on this device, call: request.testDevices = [NSArray arrayWithObjects:GAD_SIMULATOR_ID, nil];
(YESにしているので、パラメータが足りないだけで。特にここは問題ない)

Must set the rootViewController property of GADBannerView before calling loadRequest:
(※ ここが問題で、いままででなかったエラー。これがコンソールに表示されてから、シミュレータで広告がでていない。)
そのまま訳せば、LoadRequestよりも前に、RootViewControllerをセットしてね。
その通りになっているはずなのに、広告は表示されない。

adView:didFailToReceiveAdWithError:Request Error: Invalid ad request parameter(s). Check the Xcode console for details.
(エラーを表示させるためのメソッドからの出力だけど、役に立っていないエラー表示)

・今後の検討
まずは、するべき作業を進めてから、
レイヤー設定についても今度検討してみます。

意外と簡単だったiAdとAdmob設定(2) cocos2dで広告付きアプリ広告用のクラスを作成して、CCLayerに追加するタイプです。

 
 (2)重複エラー、正式なエラー表示は忘れました。
 同じ画像を、リソースに設定してしまいました。異なるディレクトリに、同じ画像名を入れてしまい、コンパイルで、やたら長いファイル構成が表示されました。
 
 原因は、同じファイル名がリソース内に存在したこと。どちらか一方を消して、OKです。

今日のエラー、X-Code 4.6.2にバージョンアップ、PCH file built from a differentエラーがでるけど、CleanでOK

 今日のエラー、X-Code 4.6.2にバージョンアップ、PCH file built from a differentエラーがでるけど、CleanでOK
 
 X-Code 4.6.2にバージョンアップしてコンパイルを実行すると
  PCH file built from a different branch ((clang-425.0.27))、、、の赤いエラーでした。
  ネットで調べるとCleanを実行すればよいとのこと。
  これでOKでした。

前回のエラー今日のエラー、iPad retina解像度、選別

Unity エラーメモ 大文字小文字がきちんと記載されているのかをチェック function OnCollisionEnter(collisionInfo:Collision)

Unity エラーメモ 大文字小文字が明確に記載されているのかをチェック function OnCollisionEnter(collisionInfo:Collision)

今日のUnityスクリプトエラーメモです。
コンパイラーがなにか間違いを指摘するかと思ったのですが、意外に指摘してくれずに10分ほど奮闘しました。

function onCollisionEnter(collisionInfo:Collision)
として記載し、コンパイルエラーがなくても動作していたのですが、本来の動きをしていなかった。

「 On」を「on」にして記載してしまった誤記でした。
正しくは、On,,,
でした。
function OnCollisionEnter(collisionInfo:Collision)
正常に動かないときは、
大文字小文字がきちんと記載されているのかを確認しましょう。

他の設定かと思ってしまいました。

Ninja game cocos2dのワーニングの対処 サンプルコードのエラーの対処 アイフォンアプリ開発、”Incompatible pointer types assigning to ‘CCActionInterval *’ from ‘CCAction *’”と‘UIDeviceOrientation’ to different enumeration type ‘UIInterfaceOrientation’

忍者ニンジャゲーム cocos2dのワーニングの対処 サンプルコードのエラーの対処
NinjaGameチュートリアル

からソースをダウンロードして、コンパイル(Xcodeによるオートアップデート処理を含む)すると
エラーが出ました。
以下の対処をして無事にエミュレートできました。

(1)Incompatible pointer types assigning to ‘CCActionInterval *’ from ‘CCAction *’
というワーニングだったので、
ぐぐったら
other = [action retain];を
other = (CCActionInterval*) [action retain];//
にすればよいそうです。

(2)Implicit conversion from enumeration type ‘UIDeviceOrientation’ to different enumeration type ‘UIInterfaceOrientation’

UIDeviceOrientationPortraitUpsideDown

UIInterfaceOrientationPortraitUpsideDown
に変更しました。