Skip to content

Commit

Permalink
Releasing Xamarin Bindings version 1.3
Browse files Browse the repository at this point in the history
  • Loading branch information
Jared Poelman authored and Jared Poelman committed Oct 20, 2016
1 parent 43ff089 commit f0839c5
Show file tree
Hide file tree
Showing 112 changed files with 970 additions and 2,190 deletions.
26 changes: 25 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,26 @@
# user specific files
*.pidb
*.userprefs
*.swp
*.DS_Store
*~
*.suo
*.user
*.pfx

# emacs temporary files
*~

# generated files
**/bin
**/obj
**/_ReSharper.*

# resource files
**/Resource.designer.cs

# nuget and component packages
**/packages
**/Components

# Support v4 dll
**/Xamarin.Android.Support.v4.dll
9 changes: 8 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
## 1.3
- Updates the iOS binding to use Appboy SDK version 2.24.2.
- Updates the Android binding to use Appboy SDK version 1.15.3.
- **Update Required** — Updates iOS push handling in the AppboyProject sample project to be compatible with iOS 10. For more information, refer to the CHANGELOG for [Appboy iOS SDK v2.24.0](https://github.com/Appboy/appboy-ios-sdk/blob/master/CHANGELOG.md#2240).
- Removes `AppboyBroadcastReceiver.cs` from the AppboyProject sample project, as Appboy Android SDK v1.15.0 removes the need for a custom `AppboyBroadcastReceiver` for Appboy push notifications.
- Updates the AppboyProject sample project to integrate session handling and in-app message manager registration using an [AppboyLifecycleCallbackListener](https://github.com/Appboy/appboy-android-sdk/blob/master/android-sdk-ui/src/com/appboy/AppboyLifecycleCallbackListener.java), as introduced in Appboy Android SDK v1.15.0.

## 1.2
- Updates the iOS binding to use Appboy SDK version 2.17.1.
- Updates the Android binding to use Appboy SDK version 1.11.0.
Expand All @@ -11,4 +18,4 @@
## 1.0
- Adds support for all standard API and UI functionality in the Android SDK and iOS SDKs.
- iOS functionality not included in this release: IDFA collection, custom Slideup viewControllers, social data collection.
- Please contact support@appboy.com for more information about these features and the timeline for their inclusion.
- Please contact support@appboy.com for more information about these features and the timeline for their inclusion.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ generally be ignored, unless you are integrating the Xamarin component and want

## Version Support

The Android SDK supports Android 2.2+ (Froyo and up). The iOS SDK supports iOS 5.1.1+.
The Android SDK supports Android 2.3+ (Gingerbread and up). The iOS SDK supports iOS 7.0+.

## Questions?

Expand Down
17 changes: 5 additions & 12 deletions appboy-component/component/GettingStarted.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,20 +15,13 @@ See [our documentation](https://documentation.appboy.com/) for instructions on h

## Android

First, set up an application in the Appboy dashboard. Then, to enable tracking of user sessions and the gathering of basic user data, add the following calls to the `onStart()` and `onStop()` lifecycle methods of __every__ Activity class in your app:
First, set up an application in the Appboy dashboard. Then, to enable tracking of user sessions and the gathering of basic user data, add the following call to the `OnCreate()` lifecycle method of the Application class in your app:

```csharp
protected override void OnStart() {
base.OnStart();
Appboy.GetInstance(this).OpenSession(this);
}
```

```csharp
protected override void OnStop() {
base.OnStop();
Appboy.GetInstance(this).CloseSession(this);
}
public override void OnCreate()
{
RegisterActivityLifecycleCallbacks (new AppboyLifecycleCallbackListener());
}
```

__Note__: Ensure that you have ``using Com.Appboy;`` at the top of your Activity so that the Appboy class resolves.
Expand Down
11 changes: 6 additions & 5 deletions appboy-component/component/License.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
Copyright (c) 2016 Appboy, Inc.
All rights reserved.

* Use of source code or binaries contained within Appboy's Xamarin Component is permitted only to enable use of the Appboy platform by customers of Appboy.
* Modification of source code and inclusion in mobile apps is explicitly allowed provided that all other conditions are met.
* Neither the name of Appboy nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
* Redistribution of source code or binaries is disallowed except with specific prior written permission. Any such redistribution must retain the above copyright notice, this list of conditions and the following disclaimer.
* The use of source code or binaries contained within Appboy's sample apps, documentation, stub APIs and other related utilities is permitted only to enable testing and quality assurance of integrations with the Appboy platform by current customers of Appboy.
* The use of source code or binaries contained within Appboy's SDKs is permitted only to enable use of the Appboy platform by current customers of Appboy.
* Modification of source code contained within this repository or inclusion of such source in any non-Appboy app, website, or related code is only permitted provided that all other conditions set forth herein are met.
* Neither the name "Appboy" nor the names of any of its contributors may be used to endorse or promote products derived from this software without the express prior written permission of Appboy.
* Redistribution of source code or binaries is strictly prohibited except with the express prior written permission of Appboy. Any such redistribution must retain the above copyright notice, this list of conditions and the following disclaimer:

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF THE USER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
4 changes: 2 additions & 2 deletions appboy-component/component/component.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,12 @@ libraries:
summary: Xamarin bindings for the Appboy SDKs.
details: Details.md
getting-started: GettingStarted.md
version: "1.2"
version: "1.3"
source:
../src/AppboyBindings.sln
samples:
Android Sample: ../samples/android/Android.sln
iOS Sample: ../samples/ios-unified/iOS.sln
Forms Sample: ../samples/xamarin-forms/TestAppXamarinForms.sln
packages:
android: Xamarin.Android.Support.v4, Version=23.0.1.3
android: Xamarin.Android.Support.v4, Version=23.0.1.3
2 changes: 0 additions & 2 deletions appboy-component/lib/android/.gitignore

This file was deleted.

Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
29 changes: 0 additions & 29 deletions appboy-component/samples/android/.gitignore

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,12 @@
using Android.Support.V4.App;
using Android.Content;
using Android.OS;
using Android.Runtime;
using Android.Util;
using Android.Views;
using Android.Widget;

using Com.Appboy;
using Com.Appboy.UI.Inappmessage;
using Com.Appboy.UI;
using Com.Appboy.UI.Inappmessage;
using Com.Appboy.Models;
using Com.Appboy.Enums;
using Com.Appboy.Enums.Inappmessage;
Expand Down Expand Up @@ -144,15 +143,15 @@ String profileImageUrl
}

class FeedbackFinishedListener : Java.Lang.Object, AppboyFeedbackFragment.IFeedbackFinishedListener {
FragmentManager mFragmentManager;
FragmentManager fragmentManager;

public FeedbackFinishedListener(FragmentManager supportFragmentManager) {
mFragmentManager = supportFragmentManager;
fragmentManager = supportFragmentManager;
}

public void OnFeedbackFinished (Com.Appboy.UI.AppboyFeedbackFragment.FeedbackResult feedbackResult) {
Console.WriteLine ("Feedback finished");
mFragmentManager.PopBackStack ();
public void OnFeedbackFinished (AppboyFeedbackFragment.FeedbackResult feedbackResult) {
Console.WriteLine("Feedback finished");
fragmentManager.PopBackStack();
}

public string BeforeFeedbackSubmitted(string feedback) {
Expand All @@ -161,4 +160,3 @@ public string BeforeFeedbackSubmitted(string feedback) {
}
}
}

Original file line number Diff line number Diff line change
@@ -1,21 +1,14 @@
using System;

using Android.Support.V4.App;
using Android.Content;
using Android.Runtime;
using Android.Views;
using Android.Widget;

using Android.OS;
using Com.Appboy;
using Com.Appboy.UI.Slideups;

namespace com.appboy.xamarinsample
{
[Android.App.Activity (Label = "TestApp.XamarinAndroid", MainLauncher = true, Icon = "@drawable/icon")]
public class MainActivity : FragmentActivity
{
private bool mRefreshData;

protected override void OnCreate (Bundle bundle)
{
base.OnCreate (bundle);
Expand All @@ -26,48 +19,5 @@ protected override void OnCreate (Bundle bundle)
fragmentTransaction.Add(com.appboy.xamarinsample.Resource.Id.root, homeFragment, homeFragment.Class.ToString());
fragmentTransaction.Commit();
}

protected override void OnStart() {
base.OnStart ();
if (Appboy.GetInstance (this).OpenSession (this)) {
mRefreshData = true;
}
}

protected override void OnStop() {
base.OnStop ();
Appboy.GetInstance (this).CloseSession (this);
}

protected override void OnNewIntent(Intent intent) {
base.OnNewIntent(intent);
Intent = intent;
}

protected override void OnResume() {
base.OnResume ();

AppboySlideupManager.Instance.RegisterSlideupManager (this);
if (mRefreshData) {
Appboy.GetInstance(this).RequestSlideupRefresh();
mRefreshData = false;
}

String source = Intent.GetStringExtra (AppboyBroadcastReceiver.SOURCE_KEY);
if (source != null && source == Com.Appboy.Constants.Appboy) {
String campaignId = Intent.GetStringExtra (Com.Appboy.Constants.AppboyPushCampaignIdKey);
if (campaignId != null) {
Appboy.GetInstance (this).LogPushNotificationOpened (campaignId);
}
}
Intent = new Intent ();
}

protected override void OnPause() {
base.OnPause ();
AppboySlideupManager.Instance.UnregisterSlideupManager (this);
}
}
}


Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
using System;
using Android.App;
using Android.Runtime;

using Com.Appboy;

namespace com.appboy.xamarinsample
{
[Application]
public class MainApplication : Application
{
public MainApplication (IntPtr handle, JniHandleOwnership transfer) : base (handle, transfer)
{
}

public override void OnCreate ()
{
RegisterActivityLifecycleCallbacks (new AppboyLifecycleCallbackListener ());
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,10 @@
// The form "{Major}.{Minor}.*" will automatically update the build and revision,
// and "{Major}.{Minor}.{Build}.*" will update just the revision.

[assembly: AssemblyVersion ("1.0.0")]
[assembly: AssemblyVersion ("1.3.0")]

// The following attributes are used to specify the signing key for the assembly,
// if desired. See the Mono documentation for more information about signing.

//[assembly: AssemblyDelaySign(false)]
//[assembly: AssemblyKeyFile("")]

Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<resources>
<!-- General configuration -->
<!-- The API key is not shown to the user and thus we don't require that it be translated. -->
<string translatable="false" name="com_appboy_api_key">ceb56287-45aa-4278-a997-b97fd753c2a3</string>
<string translatable="false" name="com_appboy_api_key">94589301-2ebd-4cb4-91ed-aa8dbc0472ed</string>
<string translatable="false" name="com_appboy_server_target">STAGING</string>
<!-- To disable automatic flushing in any of these network conditions, simply set the value to -1. To turn off
all automatic data flushing, set all three intervals to -1. When automatic flushing is disabled, you can use
Expand Down Expand Up @@ -34,4 +34,5 @@
location will not be set for the user unless integrating apps manually call setUserLastKnownLocation on the AppboyUser.
-->
<bool name="com_appboy_disable_location_collection">false</bool>
<bool name="com_appboy_handle_push_deep_links_automatically">true</bool>
</resources>
Loading

0 comments on commit f0839c5

Please sign in to comment.