我无法更新我的条目,在尝试更新之前,我使用 client.entries().async().unPublish(entry)
取消发布该条目,它可以工作,但是当我尝试使用以下代码更新时,我收到以下消息:java.lang.IllegalArgumentException: entry must have a space associated.
我做错了什么?
final CMAClient client =
new CMAClient
.Builder()
.setAccessToken(contentfulConnection.getCMA_TOKEN())
.build();
final CMASystem sys = new CMASystem();
sys.setId(entryID).setVersion(CurrentVersion);
CMAEntry entry;
entry.setField("name", "en-US", "TEST").setSystem(sys);
entry.setSpaceId(SPACE_ID);
entry.setID("entryID");
client.entries().async().update(entry, new CMACallback<CMAEntry>() {
@Override protected void onSuccess(CMAEntry entry) {
// Successfully created a new entry.
new AlertDialog.Builder(ctx).setTitle("Contentful")
.setMessage("Creation of an entry was successful." +"nnResult:
" +
entry).show();
} }
@Override protected void onFailure(RuntimeException exception) {
// An error occurred! Inform the user.
new AlertDialog.Builder(ctx)
.setTitle("Contentful Error")
.setMessage("Could not create an entry." +
"nnReason: " + exception.toString())
.show();
System.out.println(exception.toString());
super.onFailure(exception);
}
}
);
我是 Contentful Java SDK 的维护者。
使用 update
方法的推荐方法是首先获取项目,更改其数据,然后再次更新。
如果点击此链接访问我们的文档,然后选择"create/update an entry
"按钮,你将看到有关如何更新条目的代码片段。请选择Android
平台以查看适用于Android的平台。
我希望这对您有所帮助。