Upgrade¶
Sometimes we need you to upgrade existing integration to use our latest features.
0.5.12¶
Migrated to AndroidX, updated Facebook SDK.
0.5.11¶
Added WhatsApp sharing support. Fixed WebView reload bug.
0.5.10¶
Added flag about availability of native email sharing to the native features header. Improved native features stability.
0.5.9¶
Added support for native email sharing.
0.5.8¶
Added compatibility with Gradle 5.x
Added ability to set custom properties on Customer
Updated Visitor registration logic to meet updated Talkable requirements
0.5.7¶
Added debug mode to facilitate testing.
Fixed bug with missing getter methods in the Reward model.
0.5.6¶
SDK is now available as a Maven package on JitPack.
0.5.5¶
Added support for third party deep linking providers.
Improved authentication and error handling for API requests.
0.5.4¶
Fixed crashes when the server sends bad responses.
0.5.3¶
Added createEmailShare
and createSocialShare
methods to TalkableApi
.
Deprecated createShare
methods from TalkableApi
.
0.5.2¶
Added support for title
, url
and imageUrl
attributes for Item
.
0.5.1¶
Added multiple coupons support for Event
and Purchase
.
0.5.0¶
Added an ability to handle errors when showing Offer.
To update from the previous version, please do following steps.
Update dependencies inside
build.gradle
:// From compile 'com.google.code.gson:gson:2.7' compile 'com.android.support:support-v4:25.3.1' // To compile 'com.google.code.gson:gson:2.8' compile 'com.android.support:support-v4:26.1.0'
Use
showOffer
functions with a callback parameter.// From showOffer(activity, origin); // To showOffer(activity, origin, new TalkableErrorCallback<TalkableOfferLoadException>() { @Override public void onError(final TalkableOfferLoadException error) { // Error handling. Note that it runs on non UI thread } });
Use
Talkable.setSiteSlug
functions without Context as a parameter.// From setSiteSlug(context, "site-slug"); // To setSiteSlug("site-slug");
TalkableOfferFragmentListener
interface implementation is optional now.In case you used
TalkableOfferFragment
directly check out a new workflow.
0.4.2¶
Read Contacts permission is optional from this version.
In case you used import_contacts
callback, you have to define READ_CONTACTS
permission inside the manifest:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.app.myapp" > <uses-permission android:name="android.permission.READ_CONTACTS" /> ... </manifest>
0.4.1¶
Fixed an issue inside TalkableOfferFragment
.
0.4.0¶
Added multiple site slugs support. Bugs fixing.¶
From this moment you can operate with multiple Talkable sites inside Talkable SDK. Look in Advanced Usage for more detailed information if needed.
To update from the previous version, please do following steps.
Update dependencies inside
build.gradle
.// From compile 'com.google.code.gson:gson:2.4' compile 'com.android.support:support-v4:24.2.1' // To compile 'com.google.code.gson:gson:2.7' compile 'com.android.support:support-v4:25.3.1'
Change credentials setup inside the manifest.
<!-- From --> <application> ... <meta-data android:name="TalkableApiKey" android:value="{{YOUR_TALKABLE_PUBLIC_API_KEY}}" /> <meta-data android:name="TalkableSiteSlug" android:value="{{YOUR_SITE_SLUG}}" /> ... </application> <!-- To --> <application> ... <meta-data android:name="tkbl-api-key-{{YOUR_SITE_SLUG}}" android:value="{{YOUR_TALKABLE_PUBLIC_API_KEY}}" /> ... </application>
Initialize Talkable in the
Application
.import com.talkable.sdk.Talkable; import android.app.Application; public class App extends Application { @Override public void onCreate() { super.onCreate(); Talkable.initialize(this); } }
Note
Make sure to add your application class name as
android:name
parameter of the<application>
element in your manifestCall
Talkable.trackAppOpen
inside you main activity class, like before.import com.talkable.sdk.Talkable; import android.app.Activity; public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { ... Talkable.trackAppOpen(this); } }
From this version defining of TalkableActivity
and InstallReferrerReceiver
inside Android Manifest is not necessary.
0.3.1¶
Introducing TalkableOfferFragmentListener
interface. Bugs fixing.¶
Fixed a bug when no campaign found and added TalkableOfferFragmentListener
interface.
To use instance of TalkableOfferFragment
directly you have to implement TalkableOfferFragmentListener
interface from TalkableOfferFragment
class inside an activity that uses the fragment.
Look in Advanced Usage for more detailed information if needed.
0.3.0¶
Move to Fragments¶
Talkable SDK is built on top of Fragments (from Support Library) instead of Activities now to provide more flexibility for end users.
0.2.0¶
Deep linking scheme¶
Add this to AndroidManifest.xml
inside definition of Talkable activity
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="tkbl-{{YOUR_SITE_SLUG}}" />
</intent-filter>
Tracking app opening¶
Replace Talkable.initialize(this);
with Talkable.trackAppOpen(this);
in your main activity.
Look in installation section for more detailed information if needed.
0.1.0¶
It’s initial release, nothing to do.