<?xml version="1.0" encoding="UTF-8"?>
<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0"
    xmlns:android="http://schemas.android.com/apk/res/android"
    id="com.zendrive.phonegap.sdk"
    version="2.3.3">

    <name>Zendrive</name>
    <description>Phonegap plugin for the Zendrive SDK.</description>

    <engines>
        <engine name="cordova" version=">=3.4.0"/>
    </engines>

    <js-module name="ZendriveCordovaPlugin" src="www/zendrive.js">
        <clobbers target="Zendrive" />
    </js-module>
    <platform name="android">
        <config-file target="res/xml/config.xml" parent="/*">
            <feature name="Zendrive">
                <param name="android-package" value="com.zendrive.phonegap.ZendriveCordovaPlugin" />
                <param name="onload" value="true" />
            </feature>
        </config-file>

        <config-file target="AndroidManifest.xml" parent="/manifest">
            <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
            <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
            <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
            <uses-permission android:name="android.permission.INTERNET" />

            <!-- This permission is needed for automatic drive detection by Zendrive. -->
            <uses-permission android:name= "com.google.android.gms.permission.ACTIVITY_RECOGNITION" />

            <!-- This permission is needed so that Zendrive can track drives completely. This prevents Android from shutting down phone CPU in the middle of a drive. -->
            <uses-permission android:name="android.permission.WAKE_LOCK" />
        </config-file>

        <config-file target="AndroidManifest.xml" parent="/manifest/application">
            <service android:name="com.zendrive.sdk.services.UserActivityService" />
            <service android:name="com.zendrive.sdk.services.ZendriveService" />
            <receiver android:name="com.zendrive.sdk.receiver.WakeupReceiver"
                android:label="WakeupReceiver"></receiver>
            <service android:name="com.zendrive.phonegap.ZendriveIntentService" />
        </config-file>

        <source-file src="src/android/com/zendrive/phonegap/ZendriveCordovaPlugin.java" target-dir="src/com/zendrive/phonegap" />
        <source-file src="src/android/com/zendrive/phonegap/ZendriveIntentService.java" target-dir="src/com/zendrive/phonegap" />
        <source-file src="src/android/com/zendrive/phonegap/ZendriveManager.java" target-dir="src/com/zendrive/phonegap" />

        <!-- External Libraries -->
        <framework src="com.google.android.gms:play-services-location:8.4.0" />
        <framework src="src/android/build-extras.gradle" custom="true" type="gradleReference" />
    </platform>
    <platform name="ios">
        <config-file target="config.xml" parent="/*">
            <feature name="Zendrive">
                <param name="ios-package" value="ZendriveCordovaPlugin" />
            </feature>
        </config-file>
        <config-file target="*-Info.plist" parent="UIBackgroundModes">
            <array>
                <string>location</string>
            </array>
        </config-file>
        <config-file target="*-Info.plist" parent="NSLocationAlwaysUsageDescription">
            <string>This app requires background location tracking</string>
        </config-file>
        <config-file target="*-Info.plist" parent="NSAppTransportSecurity">
            <dict>
                <key>NSAllowsArbitraryLoads</key>
                <true />
            </dict>
        </config-file>

        <header-file src="src/ios/ZendriveCordovaPlugin.h" />
        <source-file src="src/ios/ZendriveCordovaPlugin.m" />

        <!-- Resource files required by AWS framework -->
        <resource-file src="src/ios/resources/s3-2006-03-01.json" />
        <resource-file src="src/ios/resources/sqs-2012-11-05.json" />

        <!-- System frameworks -->
        <framework src="CoreLocation.framework" />
        <framework src="CoreMotion.framework" />
        <framework src="SystemConfiguration.framework" />
        <framework src="libsqlite3.0.dylib" />
        <framework src="libz.1.1.3.dylib" />
        <framework src="libc++.dylib" />

        <!-- External Frameworks -->

        <framework src="src/ios/Frameworks/AWSCore.framework" custom="true" />
        <framework src="src/ios/Frameworks/AWSSQS.framework" custom="true" />
        <framework src="src/ios/Frameworks/FMDB.framework" custom="true" />
        <framework src="src/ios/Frameworks/Reachability.framework" custom="true" />
        <framework src="src/ios/Frameworks/ZendriveSDK.framework" custom="true" />
    </platform>
</plugin>
