9

Googleで検索してみましたが、これが何を意味するのかを理解しようとしても、文字通り結果が得られませんでした. 私のコンソールはログに記録しています:

objc[17048]: Class _NSZombie_GEOLatLng is implemented in both ?? and ??. One of the two will be used. Which one is undefined.
objc[17048]: Class _NSZombie_GEOLatLng is implemented in both ?? and ??. One of the two will be used. Which one is undefined.
objc[17048]: Class _NSZombie_GEOLocation is implemented in both ?? and ??. One of the two will be used. Which one is undefined.
objc[17048]: Class _NSZombie_GEOLocation is implemented in both ?? and ??. One of the two will be used. Which one is undefined.

以前にこれを見たことがある人はいますか、それが何を意味するのか、何が原因なのか、それが問題なのか分かりますか?

4

3 に答える 3

5

見たことある。具体的には、OS X の場合ですが、原因は同じはずです。GEOLocation(およびその他) は、プロセスにロードされる 2 つのイメージで定義されます。

それがあなたが書いたクラスだった場合、クラスのシンボルは複数のオブジェクト ファイル (リンカー エラーになる可能性が高いですが…)、リンクされたライブラリ、ロードされたバンドル、またはいくつかの組み合わせで定義されます - コードが動的にロードされる場合。

あなたが書いた (または合成した) クラスでない場合は、クラスの作成者にバグを報告してください。

クラスがアプリで定義されていて、リンクされたライブラリでも定義されている可能性があります。その場合、クラスの名前を変更する必要があります。

それは間違いなく問題です。クラス (その名前を持つ) は objc ランタイムに 2 回読み込まれます。objc はフラットな名前空間を使用するため、インスタンスの作成時にどの実装が返されるかは保証されません。

この場合、クラスはシステム フレームワークに存在するので... バグ報告者に送信してください。早急に修正する必要があります。

于 2011-12-31T08:24:16.280 に答える
2

これは、ビルド スキームでゾンビ警告を有効にしたときに発生する無害な警告です。無視してかまいません。

于 2016-02-17T10:13:17.600 に答える
0

このあいまいなメッセージが表示され、NIB がプロジェクトから削除されていることに気付きましたが、コードはまだそれを使用していました。まだ使用中のリソースがバンドルから削除されているかどうかを確認することをお勧めします。

于 2012-05-29T18:06:40.233 に答える