Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions plugin.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<plugin xmlns="http://www.phonegap.com/ns/plugins/1.0"
id="adobe-mobile-services"
version="4.12.0">
version=4.13.0>"
<name>ADBMobile</name>
<description>Adobe Mobile Services Plugin</description>

Expand Down Expand Up @@ -42,6 +42,6 @@
<receiver android:name="com.adobe.mobile.MessageNotificationHandler" />
</config-file>
<source-file src="sdks/Cordova/ADBMobile/Android/ADBMobile_PhoneGap.java" target-dir="src/com/adobe/" />
<source-file src="sdks/Android/AdobeMobileLibrary/adobeMobileLibrary-4.12.0.jar" target-dir="libs" />
<source-file src="sdks/Android/AdobeMobileLibrary/adobeMobileLibrary-4.13.0.jar" target-dir="libs" />
</platform>
</plugin>
6 changes: 4 additions & 2 deletions sdks/Android/AdobeMobileLibrary/ADBMobileConfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,17 +10,19 @@
"referrerTimeout" : 0,
"batchLimit" : 0,
"privacyDefault" : "optedin",
"backdateSessionInfo" : false,
"poi" : []
},
"target" : {
"clientCode" : "",
"timeout" : 5
},
"audienceManager" : {
"server" : ""
"server" : "",
"analyticsForwardingEnabled": false
},
"acquisition" : {
"server" : "",
"server" : "",
"appid" : ""
}
}
Binary file not shown.
Binary file not shown.
142 changes: 142 additions & 0 deletions sdks/Android/AndroidWear_README.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
====================================
Android Wearable Implementation
====================================

Starting in Android SDK version 4.5.0, Android Wearable are supported. This allows you to collect usage data from your Android Wearable Apps.

====================================
Getting Started
====================================
The following steps are to be performed in your Android Studio project. This guide is written assuming you have a project with at least two (2) modules in it; one for the Handheld app, and one for the Wearable app. For more information on developing for Android Wearable, please go to https://developer.android.com/training/building-wearables.html.


## Configure the SDK for Handheld app (Android Studio) ##

1. Add the ADBMobileConfig.json file to the assets folder of your project.
2. Add the adobeMobileLibrary-*.jar file to the libs folder, or make sure it get referenced by the project. You might need to sync the gradle project after adding the jar file.
3. In the onCreate method of your main activity, allow the SDK access to your application context using Config.setContext:

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

// Allow the SDK access to the application context
Config.setContext(this.getApplicationContext());
}

4. Add following code to AndroidManifest.xml

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />

<application>
.......
<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
</application>

5. Make sure your project has included google-play-services.jar
6. Implement WearableListenerService, or add the corresponding code into your own WearableListenerService:

public class WearListenerService extends WearableListenerService {

@Override
public void onMessageReceived(MessageEvent messageEvent) {
super.onMessageReceived(messageEvent);
}

private GoogleApiClient mGoogleApiClient;

@Override
public void onCreate() {
super.onCreate();
mGoogleApiClient = new GoogleApiClient.Builder(this)
.addApi(Wearable.API)
.build();
mGoogleApiClient.connect();
}
@Override
public void onDestroy() {
super.onDestroy();
mGoogleApiClient.disconnect();
}

@Override
public void onDataChanged(com.google.android.gms.wearable.DataEventBuffer dataEvents) {
DataListenerHandheld.onDataChanged(dataEvents, mGoogleApiClient, this);
}
}

7. Add WearListenerService into AndroidManifest.xml

<application>
.......
<service
android:name=".WearListenerService" >
<intent-filter>
<action android:name="com.google.android.gms.wearable.BIND_LISTENER" />
</intent-filter>
</service>
</application>


## Configure the SDK for Wear app (Android Studio) ##

1. Add the same ADBMobileConfig.json file to the assets folder of your wearable project.
Or you can change the gradle config to use the ADBMobileConfig.json in the assets folder of the handheld app.
android {

sourceSets {
main {
assets.srcDirs = ['src/main/assets','../mobile/src/main/assets']
}
}
}
2. Add the adobeMobileLibrary-*.jar file to the libs folder, or make sure it get referenced by the project. You might need to sync the gradle project after adding the jar file.
3. In the onCreate method of the main activity, allow the SDK access to your application context using Config.setContext:

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// Allow the SDK access to the application context
Config.setContext(this.getApplicationContext(), Config.ApplicationType.APPLICATION_TYPE_WEARABLE);
}

4. Add following code to AndroidManifest.xml
<application>
.......
<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
</application>

5. Make sure your project has included google-play-services.jar
6. Implement WearableListenerService, or add the corresponding code into your own WearableListenerService:

public class WearListenerService extends WearableListenerService {
@Override
public void onDataChanged(com.google.android.gms.wearable.DataEventBuffer dataEvents) {
DataListenerWearable.onDataChanged(dataEvents);
}
}

7. Add WearListenerService into AndroidManifest.xml

<application>
......
<service android:name=".WearListenerService">
<intent-filter>
<action android:name="com.google.android.gms.wearable.BIND_LISTENER" />
</intent-filter>
</service>
</application>


For full documentation on how to use the iOS 4.x SDK, please visit https://marketing.adobe.com/resources/help/en_US/mobile/android/dev_qs.html

Notes:
1. There is one additional context(A.RunMode) added to indicate whether the data comes from handheld app or wearable app.
a.RunMode = Application means the hit comes from handheld app
a.RunMode = Extension means the hit comes from wearable app
2. SDK automatically sync aid/vid/visitor service id/privacy status from the handheld app to wearable app, so it's better not calling setPrivacyStatus/setUserIdentifier/idSync from wearable app.
3. In-app messages, target and aam are disabled for wearable app.
88 changes: 87 additions & 1 deletion sdks/Android/ReleaseNotes.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,93 @@ Included are notes from the latest major revision to current.
For full SDK documentation, please visit:
https://marketing.adobe.com/resources/help/en_US/mobile/android/

4.4.1 (26 Jan, 2015)
4.13.0 (15 Sep, 2016)
- Deep Linking - Enhancements to enable tracking of 3rd party deferred deep links

4.12.0 (18 Aug, 2016)
- Visitor ID Service - Added new method to append visitor identity to a given URL in-order to transfer identity to a web-based implementation.

4.11.1 (28 Jul, 2016)
- In App Messaging - Fixed a fullscreen message issue that could cause a crash when the fullscreen message activity is killed by the system
- In App Messaging - Fixed a bug that prevented fullscreen and alert messages from displaying after a local notification was triggered
- Deep Linking - Fixed an issue that could cause a crash when using custom deeplink urls
- Audience Manager - Improved handling of empty or invalid responses from AAM server

4.11.0 (16 Jun, 2016)
- Target - New Target API for passing in requestLocation parameters
- Target - Fixed the bug where mboxHost/orderId/orderTotal were not correctly handled in legacy Target API
- Postbacks/In-App Messaging - Removed requirements on analytics for Postbacks and In-App Messaging
- Postbacks - Fixed the issue where post body was encoded when the content type is application/json
- Postbacks - Fixed a crash when key or value in context data was passed in as null and a postback was configured

4.10.0 (19 May, 2016)
- New Feature - New Target API
- New Feature - PII data collection

4.9.0 (5 May, 2016)
- New Feature - deep linking with acquisition
- New Feature - callback system allowing access to acquisition, deep link, and lifecycle information
- New Feature - message payload support for local and push messaging

4.8.3 (18 Feb, 2016)
- Configuration - privacy status is now respected for Target, Audience Manager, and Visitor ID Service activity
- Visitor ID Service - fixed a bug caused by attempting to sync a null identifier
- Audience Manager - timeout for AAM requests is now configurable in the Mobile Services UI and in ADBMobileConfig.json
- Fixed a bug that was preventing proper database initialization

4.8.2 (21 Jan, 2016)
- Acquisition - fixed a bug where referrer data was not inserted into lifecycle data if the intent was triggered before first launch
- Postbacks - fixed a bug where requests were not triggered for the lifetime value amount trait
- Postbacks - fixed an encoding issue with non-string context data values in requests
- Target - Resolved race condition that could lead to occasional crashes

4.8.1 (4 Nov, 2015)
- Visitor ID Service - added support to AAM for customer IDs and authentication state
- Analytics - fixed an issue introduced in 4.8.0 where last known hit timestamp was not updated.

4.8.0 (2 Nov, 2015)
- Visitor ID Service - added support to send in an authentication state when syncing Visitor ID Service identifiers
- Audience Manager - added support for automatic forwarding of Analytics data to Audience Manager
- Analytics - fixed an issue where backdated hits would contain current device information
- Fixed a compile error with Google Play Services 8.1 when ProGuard is enabled

4.7.0 (skipped to match cadence with iOS)

4.6.1 (24 Sept, 2015)
- New Feature - Android 6.0(Marshmallow) compatibility

4.6.0 (16 Sept, 2015)
- New Feature - support for push messaging
- New Feature - support for 3rd party callbacks
- Acquisition - enhanced functionality added for acquisition
- Analytics - fixed a bug preventing an aid from being re-generated if Visitor ID Service was enabled, then later disabled

4.5.4 (20 Aug, 2015)
- Configuration - made a small change to configuration loading to support better integration with PhoneGap

4.5.3 (16 July, 2015)
- Analytics - fixed a bug where unsuccessful close of HTTP connection could result in failure of sending non-ssl Analytics requests in older Android Versions

4.5.2 (26 June, 2015)
- Audience Manager - fixed a bug where lack of destination urls in AAM response could result in no visitor profile being available locally

4.5.1 (18 June, 2015)
- In App Messaging - fixed a bug where messages were incorrectly triggered if all messages were disabled at once
- In App Messaging - fixed a bug where messages were not being triggered after their showrule was changed
- In App Messaging - fixed a bug where an Activity reference could cause memory leaks
- Visitor ID Service - fixed an issue causing location hint to be set incorrectly for visitor id service on analytics calls
- Analytics - Added an optional config item to allow for disabling backdating on the session info hit

4.5.0 (29 Apr, 2015)
- Added support for Android Wear devices
- Check out our Android Wear Example in GitHub: https://github.com/Adobe-Marketing-Cloud/mobile-services/releases/tag/v1.0-Android-wear

4.4.2 (16 Apr, 2015)
- Added Locale to in-app messaging traits
- Added custom data on lifecycle to in-app messaging traits
- Added ssl support for Target calls

4.4.1 (19 Feb, 2015)
- Fixed an issue where ssl connections could cause a full connection on every call

4.4.0 (15 Jan, 2015)
Expand Down
Loading