1

OpenFeint 対応の iOS アプリを作成しています。私は1つを除くすべての成果を機能させることができました。この 1 つの成果は、部分的に完了したものです。

私の具体的な問題は、現在の達成率に 1% を追加する有効な解決策が見つからないことです。

私はこの値を見つけました(それはであるはずですdouble):

double achievement12 = [OFAchievementService getPercentComplete:ach12Id 
                                                        forUser:[OpenFeint lastLoggedInUserID]];

ただし、これにより次のエラーと警告が発生します。

「初期化で 'objc_object*' を 'double' に変換できません。

「OpenFeint」は「+lastLoggedInUserId」に応答しない場合があります

「OFAchievementService」は「+getPercentComplete:forUser:」に応答しない場合があります

実際の関数コードは次のとおりです。

    // Note: this should be moved into public API
   + (double) getPercentComplete:(NSString*)achievementId forUser:(NSString*)userId
    {
        sAlreadyAtLeastPartlyCompleteQuery.bind("achievement_definition_id", achievementId);
        sAlreadyAtLeastPartlyCompleteQuery.bind("user_id", userId);     
        sAlreadyAtLeastPartlyCompleteQuery.execute();
        float percentComplete = (double)    (sAlreadyAtLeastPartlyCompleteQuery.getDouble("percent_complete"));
    sAlreadyAtLeastPartlyCompleteQuery.resetQuery();
    return percentComplete;
    }

これは私がこのアプリでしなければならない最後のことであり、数日間私を悩ませています.

4

2 に答える 2

0

OpenFeint サポートは、セキュリティ上の問題により、その部分を統合していないと述べています。

そうは言っても、後でデータを取得できるように、データを含むファイルを保存することに頼りました(もちろん、実際の値を隠すために式を使用します)

于 2011-07-02T20:34:43.247 に答える
0

アチーブメント ID が正しいことを確認すると、double ではなくNSSStringが返されると思います。int

OpenFeint を使用して現在の実績の進行状況を取得する

于 2011-04-08T09:50:50.127 に答える