【Cocoa】Macプログラマのスレ【Objective-C】

1仕様書無しさん2008/06/23(月) 17:06:37
Apple Developer Connection
http://developer.apple.com/jp/

関連スレ
Macでプログラミング{8}
http://pc11.2ch.net/test/read.cgi/mac/1195385771/

Objective-C [ObjC part:3];
http://pc11.2ch.net/test/read.cgi/tech/1186543111/

【マック】Macintoshプログラミング質問箱
http://pc11.2ch.net/test/read.cgi/tech/1113058054/

Cocoaはさっぱり!!! version.X(10)
http://pc11.2ch.net/test/read.cgi/mac/1211290055/

Xcode part6
http://pc11.2ch.net/test/read.cgi/mac/1201693264/

739仕様書無しさん2015/02/10(火) 03:37:17.29
所有権を獲得してないでだと勝手に解放されて解放されたメモリがたまたまばっちし他のインスタンスに割り当てられるってありうることなのに
いまだにそれがわかってないんだな。自分が無知なのを&理解を深めようともしないのを棚に上げて「みんなARC使ってるから、こういう現象に直面してないのかな」ってアホかw
もう百年どうどう巡りをすればいいと思わざるを得ない

740仕様書無しさん2015/02/10(火) 05:28:36.32
>>739
お、ごめんごめん悪気は無いよ、気に障ったなら申し訳ない。
呼び出しはポインタで、retainしないと、そこが再利用されて別のオブジェクトが呼び出されるんだろうなってことは、
前のレスで聞いてるんだけど、それは正解なのかな?

百年?
retain releaseが、当たり前で、何故それをやらなくては行けないかとか、そういう話じゃなくて。
全く問題なく実行できる環境と、毎回別のオブジェクトに変わってしまう場合の違いってのは何なのか知りたいんだ。

メモリ管理ソフトとか入れて、毎回メモリ解放してるような環境の人とか限定って分けでも無さそうなんだよね

741仕様書無しさん2015/02/10(火) 06:24:21.16
ちゃんと実証コード書いてみ。BAD_ACCESSにもならないからという、そんな確実なものを書けるなら
なんか初心者に近いのにそうじゃないのを匂わせるのがムカつくんやw

742仕様書無しさん2015/02/10(火) 06:38:28.85
>破棄された場合に、他のオブジェクトが入るから(__weakじゃ無いな)
って、どういう意味?ポインタはなんとかくでも知っているだよな?Objevtive-Cではインスタンスはポインタにすぎないのも知っているよね?
「破棄された場合に、他のオブジェクトが入る」ってふつうは(?)、変数に格納されている値(アドレス)が変わると受け取るけど?だったら、そういうコードがあるのだろ(=あんたがそうしている)という結論になるけど
アドレスが変わってないのに内容が変わるのは、まあメモリの再利用が濃厚。てかそれ以外はあまり考えられないってのに

そういうところが初心者にしか見えないんだけどな。でも、「ライフタイム修飾子は、割と最近だよね、あんまり使ってないや」ってかなりやっていそうな雰囲気を醸し出すアホかっていう

743仕様書無しさん2015/02/10(火) 11:12:05.65
単純にメモリが再利用されてるんだろ。
何かのインスタンス:Aを生成して、そのポインタのメモリはたったの4バイト(64bitなら8バイトか)
Aを破棄した後でそこに新しいインスタンス:Bのポインタが割り当てられたってだけ。

MRCなら勝手に解放されちゃまずいものはretainするのが鉄則だろう。
propertyにしてretain属性付ければいい話。つかARC使えよw

744仕様書無しさん2015/02/10(火) 11:14:25.06
↑ああすまん、ちょっと嘘がある。

745仕様書無しさん2015/02/10(火) 11:30:48.78
質問者の彼アホ全開なのに本人は気付いてなさげなところが哀れ

746仕様書無しさん2015/02/10(火) 12:00:56.14
>>743の訂正
再利用されたのはインスタンスAが展開されていた領域な。
だからAもBもポインタ値は同じ。
MRCならAを使う側でretain、使い終わったらreleaseだろ。

747仕様書無しさん2015/02/10(火) 16:02:37.96
そもそも所有権を持たないオブジェクトが勝手に解放されて、それを参照している部分がどうだこうだと拘るのが異常的ではあるな
フツーに動いていようがなんか変だろうが(潜在的)バグに変わりがないのだから、とっとと直せっちゅうに。そんな意味ないとこに拘るなら、ちゃんと基礎を勉強することに拘れよっていうw

748仕様書無しさん2015/02/10(火) 16:09:43.98
>>746
ARCに対してのMRCだが、Appleでは正式にはMRR (Manual Retain-Release)と呼ぶのを最近知ったw

749仕様書無しさん2015/02/10(火) 16:31:17.64
それは知らんかった。

750仕様書無しさん2015/02/12(木) 00:30:25.72
>>655
UXKit来たな。

751仕様書無しさん2015/02/13(金) 09:46:50.33
UXKitはiOS開発者向けの移植用KitだからAppKit自体は廃止されないだろう。
最低限のUIを提供するUXKit上で従来のAppKitを乗っけるっていう発想だと思うけど。

752仕様書無しさん2015/02/15(日) 20:46:27.75
>>751
今ならAudio Hijack 3とBRadikoが定番かな

753仕様書無しさん2015/02/15(日) 23:35:41.35
どこの誤爆だ?

754仕様書無しさん2015/02/24(火) 17:24:45.04
MacDeveloperで落とした10.9って、ライセンス的にどういう扱いになるの?

755仕様書無しさん2015/03/07(土) 17:40:01.14
Yosemite向けに作成したアプリをMavericksでも動くようにしたいんだけど、
その場合、10.10以降のAPIは削除しないとAppStoreに公開できなくなるかな?
きちんとIF文で互換性判定を行ってクラッシュしない物をつくれば大丈夫そうな気もするけど、
Mavericksからみたら10.10のAPIはnon public APIになるわけだし。

下のiOSの人はアウトだったみたいなので、OSXでもアウトにならないか心配。

ttp://hmdt.jp/blog/?p=115

756仕様書無しさん2015/03/07(土) 17:59:42.22
>>754
10.10でなかったらそこを実行しないようにするだけでいいよ。きちんとIF文で10.10だったら実行(、でなかったら代替でとか)
Frameworkそのものが10.10にしかないのだったら、FrameworkをOptionalでリンク

757仕様書無しさん2015/03/07(土) 18:03:35.63
>>754
そのURLのとこの non public API ってのは、「ベータ」OSのAPIはまだnon public API扱いってのだろう
そんなベータOSに対応したのにベータOSのは受け付けていないのを知っていてリジェクトされたってほざいているようなところを参照しても意味ないだろうw

758仕様書無しさん2015/03/09(月) 11:21:16.09
今更Mavericks対応なんて需要あるのか?

759仕様書無しさん2015/03/09(月) 12:40:44.23
Yosemiteの評価は需要がありそうに見える?

760仕様書無しさん2015/03/09(月) 12:50:10.34
>>756
なんでこういう流れになるんだ?

761仕様書無しさん2015/03/09(月) 14:41:14.62
読めないからそういう疑問になるのだろう

762仕様書無しさん2015/03/09(月) 20:23:01.11
いあ、でもAPIがどうこうとか明らかに無関係じゃ、、

763仕様書無しさん2015/03/09(月) 21:18:24.35
元々、誤読した結果が
>Mavericksからみたら10.10のAPIはnon public APIになるわけだし
もちろん、これは明確な誤り

元ネタが明確には「一般未公開OS」のAPIとは謳ってないのだから仕方が無いと百歩譲って言えるかもしれないw
複数OSバージョン対応の経験がちょっとでもあればそんな誤読はしないと思うけど

そもそもの記事が「一般未公開OS」に対応し、まだ受付を行っていないのを知っているがコードをそのままにして、申請したらリジェクトされたって、偉そうに逆恨みを連ねているだけだからな
そんなアホな記事を書かなければそもそも誤読が発生しなかったかもなw

764仕様書無しさん2015/03/10(火) 11:02:04.45
non public APIって要するにアンダースコアで始まるメソッドやクラスだろ?
リジェクトされるのは次期APIでアンスコが消えた時にnon public APIを使っていた既存のアプリがクラッシュするリスクがあるからだよ。
Yosemite用APIでMarvericks向けアプリを作るだけならその問題には抵触しないはず。
きちんとMavericks用とYosemite用で処理を切り分けてクラッシュしないものを提出すれば問題ないと思うよ。

765仕様書無しさん2015/03/10(火) 15:52:17.37
アンダースコアで始まらないのもあるけどな。Private API/Undocumented APIていう方がわかりいいだろう

766仕様書無しさん2015/03/12(木) 13:48:55.90
で、結局developerで落とせるOS Xのライセンスはどうなるのかね。
仮想環境とかにインストールして使ってもいいのかね。

767Killery ◆CzYk9LSvHM 2015/04/30(木) 22:12:09.01
誰か、自作のデバッグがMAC OS 10.6で動くかどうか
テストしてもらいたいんだけど?

ttps://sourceforge.jp/projects/awarsiii/releases/


Awars IV.v0.5.zip ってやつがそう
そんなかにdebugあるから、Awars IVを立ち上げれるかどうか

768仕様書無しさん2015/05/01(金) 00:12:45.22
こんなの実行する馬鹿いないだろw
ウィルス入りか?

769仕様書無しさん2015/05/01(金) 00:39:14.86
なんか昔どっかでみたな。続けていたのか

770仕様書無しさん2015/05/01(金) 21:06:07.54
っていう

771仕様書無しさん2015/06/29(月) 17:58:53.83
Xcode6なんだけど、Macアプリのメニューバーのローカライズって自分で一つづつ翻訳しないといけないんだな。
昔からそうだったっけ?

772仕様書無しさん2015/06/29(月) 18:18:14.23
イミフ

773仕様書無しさん2015/11/14(土) 19:11:45.46
例えばキーロガーみたいなのが作りたいんですが、
アプリがアクティブじゃなくてもキーイベントを収集できるAPIってありますか?

774仕様書無しさん2015/11/14(土) 19:50:50.31
うん、あるよ。当然

775仕様書無しさん2015/11/14(土) 20:09:52.99
ウイルス作る気か?
なんのために使うかを言ってくれないと教えられん。

776仕様書無しさん2015/11/14(土) 20:22:49.66
まあ、お手軽に普通には Accessibillty で ユーザが許可を与えなければ ならないのだから

777仕様書無しさん2015/11/14(土) 20:59:08.44
>>776
いえ、普通にライフログ的なツールが作りたかっただけです。

778仕様書無しさん2015/11/14(土) 21:25:16.89
サンドボックス環境なら[NSEvent addGlobalMonitorForEventsMatchingMask:NSKeyDownMask ...]が一番安全。
確かアクセシビリティは求められた気がする。

779仕様書無しさん2015/11/14(土) 21:31:34.15
サンドボックスはあんま関係ないような
addGlobalMonitorForEventsMatchingMask:に書いてあるように事前に AXIsProcessTrustedを(ただ)呼んでおいてねだね

780仕様書無しさん2015/11/14(土) 21:40:25.81
せっかく実証してみたのだから晒してみようw

- (void)installGlobalMonitor:(NSTimer *)timer {
if(!AXIsProcessTrusted())
return;
[timer invalidate];

[NSEvent addGlobalMonitorForEventsMatchingMask:NSKeyDownMask handler:^(NSEvent *event ) {
NSLog(@"Global:%@", event);
}];
}

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
// Insert code here to initialize your application
if(AXIsProcessTrustedWithOptions((__bridge CFDictionaryRef)@{ (__bridge NSString *)kAXTrustedCheckOptionPrompt : @(YES) }))
[self installGlobalMonitor:nil];
else
[NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(installGlobalMonitor:) userInfo:nil repeats:YES];

[NSEvent addLocalMonitorForEventsMatchingMask:NSKeyDownMask handler:^NSEvent *(NSEvent *event) {
NSLog( @Local:%@", event);
return event;
}];
}

781仕様書無しさん2015/11/14(土) 21:42:55.64
XcodeでRun(Debugger)する場合には、許可を与えるのはXcodeにね
成果物を直接起動する場合には成果物に許可を

782仕様書無しさん2015/11/14(土) 23:30:46.84
>>781
ありがとうございます!早速試してみます。

783仕様書無しさん2015/11/24(火) 03:35:17.82
質問です。
- (BOOL)becomeFirstResponderメソッド内で、直前にフォーカスのあたっていたviewを取得するにはどうすれば良いでしょうか?

784仕様書無しさん2016/01/15(金) 21:46:53.29
GetKeys IM

785仕様書無しさん2017/06/12(月) 06:35:07.46
いみがわからない

786仕様書無しさん2017/12/29(金) 21:08:05.51
誰でも簡単にパソコン1台で稼げる方法など
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。

グーグル検索⇒『宮本のゴウリエセレレ』

NJJIMAAZE9

787仕様書無しさん2018/05/22(火) 13:59:26.05
とても簡単な自宅で稼げる方法
参考までに書いておきます
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

LJETR

788仕様書無しさん2018/06/02(土) 09:20:42.59
【マック】Macintoshプログラミング質問箱
http://mevius.2ch.net/test/read.cgi/tech/1113058054/
落ちた

789仕様書無しさん2018/06/07(木) 10:25:54.59
https://supernova.studio/
https://www.sketchapp.com/
ttp://photoshopvip.net/103903
ttps://goodpatch.com/blog/sketch-plugins/

Sketchプラグイン集
https://sketchapp.com/extensions/plugins/

新着レスの表示
レスを投稿する