在终于让Android Facebook SDK正确导入之后,我发现eclipse无法识别FbDialog.java中onclick的覆盖:
mCrossImage.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mListener.onCancel();
FbDialog.this.dismiss();
}
});
它也不识别 ServiceConnection 的 TokenRefreshServiceConnection 实现中的 onServiceConnected 和 onServiceDisconnected 的覆盖
@Override
public void onServiceConnected(ComponentName className, IBinder service) {
messageSender = new Messenger(service);
refreshToken();
}
@Override
public void onServiceDisconnected(ComponentName arg) {
serviceListener.onError(new Error("Service disconnected"));
// We returned an error so there's no point in
// keeping the binding open.
mAuthActivity.unbindService(TokenRefreshServiceConnection.this);
}
在警告中,所有三种方法都说该方法必须覆盖超类方法。我还没有修改代码。我检查了 Eclipse 是否将这些类型识别为相应超类中的相同类型,并且我尝试按 control-shift-o 来组织导入,这是针对类似问题的答案中建议的修复。
这些覆盖是 SDK 的一部分,而不是任何单独的项目。我将项目设置为使用 Android SDK 2.2,如 Facebook 的说明所示,以及 4.0.3,理论上,它应该与所有以前的版本兼容。我还没有让 Facebook 自己的代码工作。作为旁注,有没有我可以使用的罐子?这将使这变得容易得多。