13

プロジェクトを iOS 9、podfile、および必要なすべてのファイルに更新しましたが、ビルドされません。私の悲しみの原因は、次のエラー メッセージにあります。

Type arguments cannot be applied to non-parameterized class 'BFTask'

これは表示される唯一のエラーですが、両方PFAnalytics.hで複数回表示され、おそらくもっと重要なことPFObject.hです。

誰かがこれが何を意味するのか教えて、解決策を提案してもらえますか? 十分な情報を提供できたと思いますが、そうでない場合はお知らせください。

**更新 01:** 評判が不十分なため、エラーのスクリーンショットを投稿できませんでした。

コード サンプルは次PFObject.hPFAnalytics.hとおりです。

(BFTask PF_GENERIC(XXSOMECLASS *)*) someMethod; 

エラーがスローされます。これは私のコードではなく、前PFObject.hPFAnalytics.h述べたとおりです。エラーをスローする関数の例をPFObject.h以下に示します

- (BFTask PF_GENERIC(NSNumber *)*)saveInBackground; 
- (BFTask PF_GENERIC(NSNumber *)*)saveEventually;
- (BFTask PF_GENERIC(NSNumber *)*)deleteInBackground;
+ (BFTask PF_GENERIC(NSNumber *)*)saveAllInBackground:(PF_NULLABLE NSArray *)objects;
+ (BFTask PF_GENERIC(NSNumber *)*)deleteAllInBackground:(PF_NULLABLE NSArray *)objects;
// .... etc

一時停止標識をクリックすると、提案は PF_GENERIC(NSNumber *) を削除することであり、このようなメソッドになります

 - (BFTask *)xxsomeMethod; 

しかし、それはもっと面倒になるだけなので役に立ちません

更新 02: my の内容Podfile:

# Uncomment this line to define a global platform for your project
# platform :ios, '8.0'

target: 'BMR' do 
    pod 'AFNetworking', '~> 2.6' 
    pod 'ParseFacebookUtils', '~> 1.8' 
    pod 'Parse' 
    pod 'ParseUI', '~> 1.1' 
    pod 'FBSDKCoreKit', '~> 4.6' 
    pod 'FBSDKLoginKit', '~> 4.6'
    pod 'JSQMessagesViewController', '~> 7.2'
    pod 'IDMPhotoBrowser', '~> 1.7' 
    pod 'RNGridMenu', '~> 0.1' 
    pod 'APHorizontalMenu', '~> 1.3' 
    pod 'ASIHTTPRequest', '~> 1.8' 
    pod 'AutoScrollLabel', '~> 0.4' 
    pod 'CJAMacros', '~> 2.1' 
    pod 'CrittercismSDK', '~> 5.3'
end
4

3 に答える 3

7

Bolts.frameworkの重複バージョンがないことを確認してください。

Parse SDK と Facebook SDK の両方を使用している場合、Parse SDK に古いバージョンの Bolts (現在 1.1.5) が含まれており、FB SDK に最新バージョンの Bolts SDK (>= 1.2.2) が含まれているという問題が発生します。

Bolt.frameworkParse SDK に付属の の古いバージョンを削除すれば、問題ありません。

使用している Bolts.SDK のバージョンを確認するには、Bolts.frameworkファイルに移動し、右クリックして [情報を見る] を選択します。

于 2015-09-20T15:25:29.607 に答える
0

Bolts.frameworkFacebookSDK の old と Parse の new の2 つがあります。FacebookSDKを xcode に追加した場所から FacebookSDK フォルダーに移動し、 Bolts.framework. 新しいものを維持Bolts.frameworkすれば、すべてがうまくいくでしょう。

それでもエラーが表示されている古いクラス ファイルを見つけられない場合は、Bolts.frameworkそれを右クリックして [show in finder] を選択し、ファインダーから facebook フォルダーをトレースバックして、それが Facebook SDK フォルダーにあることを確認し、Bolts.framework. Parse SDK フォルダから追加した新しい Bolts.framework を削除しないでください。

于 2015-10-26T15:56:00.923 に答える