Skip to content

Releases: leancloud/java-unified-sdk

6.4.0 release notes

10 Mar 03:59

Choose a tag to compare

Break changes

  • None

New features

  • enable cache policy for cloud function calling, add following methods to AVCloud:
public static <T> Observable<T> callFunctionWithCacheInBackground(String name, Map<String, Object> params,
    AVQuery.CachePolicy cachePolicy, long maxCacheAge);
public static <T> Observable<T> callRPCWithCacheInBackground(String name, Map<String, Object> params,
    AVQuery.CachePolicy cachePolicy, long maxCacheAge);
  • support foreground service for PushService:
PushService.setForegroundMode(true, 101, notification);
  • add IMOption for persisting last notify timestamp or not:
AVIMOptions.getGlobalOptions().setAlwaysRetrieveAllNotification(true);

Optimization and fixed bugs

  • upgrade realtime protocol, auto-close connection under special instruction from server,
    and report android os info within session open request.
  • some performance optimizations.

6.3.1 releasenote

02 Mar 05:24

Choose a tag to compare

Break changes

  • None

New features

  • enable specify customized PushReceiver for xiaomi/huawei/flyme mix Push. New methods in AVMixPushManager:
public static void registerXiaomiPush(Context context, String miAppId, String miAppKey, Class customizedReceiver);
public static void registerXiaomiPush(Context context, String miAppId, String miAppKey, String profile, Class customizedReceiver);
public static void registerXiaomiPush(Context context, String miAppId, String miAppKey, String profile, boolean isInternationalVendor, Class customizedReceiver);

public static void registerHMSPush(Application application, Class customizedReceiver);
public static void registerHMSPush(Application application, String profile, Class customizedReceiver);

public static boolean registerFlymePush(Context context, String flymeId, String flymeKey, String profile, Class customizedReceiver);
public static boolean registerFlymePush(Context context, String flymeId, String flymeKey, Class customizedReceiver);

Optimization and fixed bugs

  • change return value type from long to int for AVIMConversation#getTemporaryExpiredat().
  • update Conversation updatedAt field while receiving muted/unmuted response.
  • fixed: upload file-based message at frist within AVIMConversation#updateMessage.
  • some performance optimizations.

6.3.0 release note

25 Jan 01:49

Choose a tag to compare

Happy New Year of the Rat.

Break changes

  • AVIMConversation changed #addMember/removeMember callback from AVIMConversationCallback to AVIMConversationPartiallySucceededCallback.
  • AVIMConversation deprecated #getAttribute/#setAttribute, you should use #get/#set instead of.

New features

  • realtime sdk will throw self-joined/self-left notification to application.
  • add onMessageReceiptEx into MessageHandler, application can get operator info than onMessageReceipt interface.

Optimization and fixed bugs

  • fixed: async call qiniu rest api for retrieving meta data.
  • fixed: call AVIMConversationsQuery#findInBackground twice, the second one will return nothing.
  • lots of performance optimization.

6.2.1 releasenotes

17 Jan 10:28

Choose a tag to compare

re-release v6.2.0, for something wrong on sonatype.org.

6.2.0 releasenotes

16 Jan 08:03

Choose a tag to compare

Break changes

  • AVObject#saveInBackground() will hold new key-value at local in default, it is also possible that the local key-value isn't correct
    if comparing with cloud data. If you need the exactly result after save or update, please use fetchWhenSave option.
    Or you can disable this feature by call:
AVOSCloud.setAutoMergeOperationDataWhenSave(false)

New features

  • AVIMConversationsQuery add three methods to support more query demand:
  /**
   * 是否返回成员列表
   * @param isCompact 为 true 的话则不返回,为 false 的话则返回成员列表,默认为 false
   * @return current instance.
   */
  public AVIMConversationsQuery setCompact(boolean isCompact)
  
  /**
   * find temporary conversations in background.
   * @param conversationIds conversation id list.
   * @param callback callback handler.
   */
  public void findTempConversationsInBackground(List<String> conversationIds, final AVIMConversationQueryCallback callback)

  /**
   * direct find with conditions in background.
   * @param where query condition
   * @param sort sort attributes
   * @param skip skip number
   * @param limit result maximum size
   * @param flag query flag:
   *            0 - Normal,
   *            1 - don't need member list within a conversation item,
   *            2 - attach last message data within a conversation item.
   * @param callback callback function.
   */
  public void directFindInBackground(String where, String sort, int skip, int limit, int flag,
                                     final AVIMConversationQueryCallback callback)

conversations and directlyfindTempConversationsInBackground

Optimization and fixed bugs

  • fixed #98: AVObject.saveAll/InBackground(objects) cannot save cascaded files.
  • fixed #97: AVQuery.getInBackground(objectId) ignore include keys setting.

6.1.9 releasenotes

09 Jan 06:36

Choose a tag to compare

Break changes

  • None

New features

  • add AVObject#fetchIfNeededInBackground(String includeKeys) method.
  • add new async methods to AVFile:
Observable<byte[]> getDataInBackground();
Observable<InputStream> getDataStreamInBackground();

Optimization and fixed bugs

  • throw Exception while query#getInBackground result is null.
  • fixed: AVCloud#call functions don't transfer parameters.

6.1.8 release notes

03 Jan 03:40

Choose a tag to compare

Break changes

  • None

New features

  • None

Optimization and fixed bugs

  • make AVObject#getDate(key) compatible for Long/String value.
  • publish Fastjson 1.1.71.android-leancloud.jar to fix double value parsing bug(such as 5.43D).

6.1.7 releasenote

30 Dec 03:52

Choose a tag to compare

Break changes

  • None

New features

  • support rtmClientSign hook for Realtime.
  • make Installation cache synchronized with Put/Get operation.

Optimization and fixed bugs

  • fixed: cannot put Date or AVObject value into Installation while saving.

6.1.6 release notes

26 Dec 07:58

Choose a tag to compare

Break changes

  • None

New features

  • add option to keep file name within download url for method AVFile#saveInBackground():
  /**
   * save to cloud backend.
   * @param keepFileName whether keep file name in url or not.
   * @return Observable object.
   */
  public Observable<AVFile> saveInBackground(boolean keepFileName);

Optimization and fixed bugs

  • fixed: AVQuery#deleteInBackground() will block UI thread.

6.1.5 release notes

17 Dec 08:21

Choose a tag to compare

Break changes

  • None

New features

  • None

Optimization and fixed bugs

  • fixed: can't get objectId of current AVInstallation after saveInBackground.