OpenFeint的解锁成就

| 我是OpenFeint的新手,实际上是从今天开始将其集成到我的游戏中的。我不明白每个使用开发人员的OpenFeint都应该知道的简单事情。这是从OpenFeint官方教程中解锁成就的示例:
new Achievement(\"achievementID\").unlock(new Achievement.UnlockCB () {
  @Override public void onSuccess() {
      MyClass.this.setResult(Activity.RESULT_OK);
      MyClass.this.finish();
  }
  @Override public void onFailure(String exceptionMessage) {
        Toast.makeText( MyClass.this,
                \"Error (\" + exceptionMessage + \") unlocking achievement.\",
                Toast.LENGTH_SHORT).show();
        MyClass.this.setResult(Activity.RESULT_CANCELED);
        MyClass.this.finish();
   }
});
问题是我不想在onSuccess或onFailure中完成活动,我只是不需要在这里做任何事情。如果仅将这两种方法保留为无代码状态,我的游戏就会冻结,并且变得完全无响应。我该怎么办?提前致谢。 附言您如何创建测试用户?我已经尝试了所有可能的电子邮件密码组合,但无法使用。     
已邀请:
        将与互联网的所有通信都放在AsyncTask中通常是一个好主意。并非每个人都有快速的互联网,因此这可以确保主线程不会因此而锁定。 话虽如此,我认为setResult函数用于startActivityForResult构造中。如果活动完成,以这种方式创建的意图只会发送回原始类。因此,要解决此问题,您需要将代码放在单独的活动中。     
        我只是在Utility类中编写了此方法
public static void unlockAchievement(final String achievementId, final Activity context){
    final Achievement achievement = new Achievement(achievementId);
    achievement.unlock(new Achievement.UnlockCB() {

        @Override
        public void onSuccess(boolean newUnlock) {
            context.setResult(Activity.RESULT_OK);

        }

        @Override
        public void onFailure(String exceptionMessage) {                
            context.setResult(Activity.RESULT_CANCELED);
            Toast.makeText(context, \"Error (\" + exceptionMessage + \") unlocking achievement.\", Toast.LENGTH_SHORT).show();
            FlurryAgent.onError(\"unlockingAchievement\", exceptionMessage, this.getClass().getSimpleName());
        }

    });

}
    

要回复问题请先登录注册