メニュー

Expand
ページを評価:

変更履歴: Twilio Chat Android SDK

We intend to sunset the Programmable Chat API on July 25, 2022 to focus on the next generation of chat: the Twilio Conversations API. Find out about the EOL process. We have also prepared this Migration Guide to assist in the transition from Chat to Conversations.

Latest Release: 7.0.1

We recommend referencing this release per the below. As we release backwards-compatible patches, these references will automatically include fixes in your project.

If you need help installing these frameworks in your project, see our installation guidance.

Install the Android NDK

To enable tools like Firebase Crashalytics, our SDKs include symbol information for native components. In order to improve SDK troubleshooting, these symbols should be part of your build process. These will be stripped automatically from your final .apk file, reducing download size.

Installing the Android SDK in your build environment also gives you the tightest possible .apk file. Simply installing the NDK reduces the Chat SDK's footprint in your .apk by as much as 20%.

Support for Previous Versions of the Chat SDKs

Twilio Programmable Chat SDKs use Semantic Versioning. Twilio supports version N-1 for 12 months after the first GA release of version N. We recommend that you upgrade to the latest version as soon as possible to avoid any breaking changes. Version 7.x is the latest Android version.

Support for 6.x will cease on May 17, 2022. Please upgrade to the latest version

Support for 5.x ceased on July 20, 2021.

Support for 4.x ceased on March 5, 2021.

End-of-Life for 3.x occurred on December 10, 2020.

End-of-Life for 2.x occurred on April 10, 2020.

End-of-Life for 1.x occurred on June 30, 2019.

Upgrade to Programmable Chat Android SDK 5.1.1 or higher

The following versions of the Programmable Chat Android SDK are deprecated and cannot be downloaded using the links below.

  • 5.0.1 and 5.1.0
  • 4.2.1, 4.2.2, and 4.2.3

Please use Android SDK 5.1.1 or higher. The latest version has significant improvements and changes from the previous versions.

チェンジログ

Links are provided to specific patch versions here. We don’t recommend using these links unless you have a specific need for a certain patch.


Programmable Chat Android 7.0.1 (Aug 31, 2021)

変更点

  • Fixed a bug when onChannelAdded event sometimes didn't arrive after restoring application from background

Programmable Chat Android 7.0.0 (May 17, 2021)

破壊的変更

  • Major under-the-hood improvement (the “Sessionless” protocol).
    This improvement is designed primarily for improved reliability. While this is not a breaking code change, it does carry a meaningful impact on timing:
    • SDK commands will return success or failure up to ~10% more quickly than before.
    • Real-time updates of data are now likely to arrive after the command completes.
      For example, Channel.setAttributes() will invoke completion (i.e., success) while Channel.getAttributes() still returns the old value. To see the new value, we recommend waiting for an update event via ChatClientListener#onChannelUpdated.

Programmable Chat Android 6.2.2 (Apr 27, 2021)

変更点

  • Fixed a reconnection issue after restoring application from background.

Programmable Chat Android 6.2.1 (Mar 17, 2021)

変更点

  • Reduced SDK footprint
  • Fixed a bug when user update event with reason ReachabilityOnline is not received in some cases

Starting from this release all artifacts are published on mavenCentral instead of jcenter. Root build.gradle have to be updated by adding mavenCentral() repository:

allprojects {
    repositories {
        mavenCentral()
    }
}

Programmable Chat Android 6.2.0 (Nov 20, 2020)

変更点

  • Added connection via proxy support. See ChatClient.Properties.Builder.setUseProxy().
  • Fixed a bug when onChanelDeleted doesn’t come for a private channel when a member is removed by another user.
  • Fixed a bug which could lead to client synchronization getting stuck.

既知の問題

  • Update to v6.2.1 or newer, if you got runtime error: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/getkeepsafe/relinker/ReLinker.

Programmable Chat Android 6.1.1 (Oct 21, 2020)

aar ドキュメント javadocs

変更点

  • Fixed a bug which could lead to crashes when member attributes are updated.

Programmable Chat Android 6.1.0 (Jul 30, 2020)

aar ドキュメント javadocs

変更点

  • SDK has switched to Android’s native SSLSocket implementation (javax.net.ssl.SSLSocket), resulting in a noticeable decrease in final application size compared to release 6.0.0.

Programmable Chat Android 6.0.0 (Jul 20, 2020)

aar ドキュメント javadocs

破壊的変更

  • ChatClient can now have multiple observers.
    • Renamed setListener to addListener.
    • removeListener()removeListener(listener) に変更しました。
    • Added removeAllListeners().
  • Now Channel.getUnconsumedMessagesCount() returns null instead of 0 if the message consumption horizon was not set.
    • Messages.setNoMessagesConsumedWithResult() always returns null instead of 0 (because it resets the consumption horizon).
  • Media message body is not hardcoded to always return null anymore. Returns actual value received from the backend instead.
  • Added Member.UpdateReason.LAST_CONSUMPTION_TIMESTAMP.
    • This as a result also changed the value of Member.UpdateReason.ATTRIBUTES (potentially silently breaking change if this value was serialized).

変更点

  • Added NotificationPayload.getMessageIndex() and NotificationPayload.INVALID_MESSAGE_INDEX for retrieving the message index from push notifications.
  • Exposed Message.dateUpdated, dateUpdatedAsDate and lastUpdatedBy.
    • lastUpdatedBy will be null if messages were not edited, or it will contain the identity of the last user who edited this message.
  • Added Message.Media.getContentTemporaryUrl() to get a temporary direct link to Media content.
    • Message.Media.download(OutputStream) is deprecated.
    • To download Media by direct URL, use some external mechanism, such as Android Download Manager or java.net.URL.readText().

Programmable Chat Android 5.1.1 (Jun 1, 2020)

aar ドキュメント javadocs

変更点

  • Fixed the bug when connection is dropped with message The WebSocket message exceeded the locally configured limit.

Programmable Chat Android 5.1.0 (May 20, 2020)

This version has been deprecated — please use 5.1.1.

aar ドキュメント javadocs

変更点

  • Added ability to specify custom command timeout for operations like send message, join to a channel, etc.

Programmable Chat Android 5.0.1 (Apr 2, 2020)

This version has been deprecated June 1, please use 5.1.1.

aar ドキュメント javadocs

変更点

  • Improved stability, fixed crashes.

Programmable Chat Android 5.0.0 (Mar 5, 2020)

aar ドキュメント javadocs

破壊的変更

  • Introduced a type-safe interface Attributes for Channel, Message, Member and User. Attributes type allows attributes to be represented as JSON types JSONObject, JSONArray, String, Number or NULL. You could query attributes to understand what type you've received.
  • registerGCMToken()/unregisterGCMToken() now use GCMToken as a parameter type instead of String.
  • registerFCMToken()/unregisterFCMToken() now use FCMToken as a parameter type instead of String.

Here are examples of how code should be changed:

For attributes:

JSONObject json = channel.getAttributes();
json.put("newKey", "newValue");
channel.setAttributes(json);

replace with:

JSONObject json = channel.getAttributes().getJSONObject();
json.put("newKey", "newValue");
channel.setAttributes(new Attributes(json));

For GCM tokens:

String token = getToken();
chatClient.registerGCMToken(token);
chatClient.unregisterGCMToken(token);

replace with:

String token = getToken();
GCMToken gcmToken = new GCMToken(token);

chatClient.registerGCMToken(gcmToken);
chatClient.unregisterGCMToken(gcmToken);

For FCM tokens:

String token = getToken();
chatClient.registerFCMToken(token);
chatClient.unregisterFCMToken(token);

replace with:

String token = getToken();
FCMToken fcmToken = new FCMToken(token);

chatClient.registerFCMToken(fcmToken);
chatClient.unregisterFCMToken(fcmToken);

バグ修正:

  • Fixed incorrect behavior when user identity contained a back-tick character (`).
  • Fixed unregistering from notifications while offline.

4.X

For older changelog entries, including 4.x, please see this changelog.

ページを評価:

ヘルプが必要ですか?

We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd by visiting Twilio's Community Forums or browsing the Twilio tag on Stack Overflow.

        
        
        

        フィードバックくださりありがとうございます!

        We are always striving to improve our documentation quality, and your feedback is valuable to us. How could this documentation serve you better?

        Sending your feedback...
        🎉 Thank you for your feedback!
        Something went wrong. Please try again.

        Thanks for your feedback!

        Refer us and get $10 in 3 simple steps!

        ステップ1

        Get link

        Get a free personal referral link here

        ステップ2:

        Give $10

        Your user signs up and upgrade using link

        ステップ3

        Get $10

        1,250 free SMSes
        OR 1,000 free voice mins
        OR 12,000 chats
        OR more