summaryrefslogtreecommitdiff
path: root/StoneIsland/plugins/phonegap-plugin-push/plugin.xml
blob: bf9c659aa975c74387834ab306eda74459f018cc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<plugin xmlns="http://www.phonegap.com/ns/plugins/1.0" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:amazon="http://schemas.android.com/apk/lib/com.amazon.device.ads" xmlns:rim="http://www.blackberry.com/ns/widgets" id="phonegap-plugin-push" version="1.9.2">
  <name>PushPlugin</name>
  <description>
		This plugin allows your application to receive push notifications on Android, iOS and Windows devices.
    Android uses Google Cloud Messaging.
    iOS uses Apple APNS Notifications.
    Windows uses Microsoft WNS Notifications.
	</description>
  <license>MIT</license>
  <js-module src="www/push.js" name="PushNotification">
    <clobbers target="PushNotification"/>
  </js-module>
  <engines>
    <engine name="cordova" version=">=6.4.0"/>
    <engine name="cordova-android" version=">=6.0.0"/>
    <engine name="cordova-ios" version=">=4.3.0"/>
  </engines>
  <preference name="SENDER_ID" default="85075801930"/>
  <platform name="android">
    <config-file target="res/xml/config.xml" parent="/*">
      <feature name="PushNotification">
        <param name="android-package" value="com.adobe.phonegap.push.PushPlugin"/>
      </feature>
    </config-file>
    <config-file target="res/values/strings.xml" parent="/resources">
      <string name="google_app_id">$SENDER_ID</string>
    </config-file>
    <config-file target="AndroidManifest.xml" parent="/manifest">
      <uses-permission android:name="android.permission.INTERNET"/>
      <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
      <uses-permission android:name="android.permission.WAKE_LOCK"/>
      <uses-permission android:name="android.permission.VIBRATE"/>
      <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE"/>
      <uses-permission android:name="${applicationId}.permission.C2D_MESSAGE"/>
      <uses-permission android:name="${applicationId}.permission.PushHandlerActivity"/>
      <permission android:name="${applicationId}.permission.C2D_MESSAGE" android:protectionLevel="signature"/>
      <permission android:name="${applicationId}.permission.PushHandlerActivity" android:protectionLevel="signature"/>
    </config-file>
    <config-file target="AndroidManifest.xml" parent="/manifest/application">
      <activity android:name="com.adobe.phonegap.push.PushHandlerActivity" android:exported="true" android:permission="${applicationId}.permission.PushHandlerActivity"/>
      <receiver android:name="com.adobe.phonegap.push.BackgroundActionButtonHandler"/>
      <receiver android:name="com.google.android.gms.gcm.GcmReceiver" android:exported="true" android:permission="com.google.android.c2dm.permission.SEND">
        <intent-filter>
          <action android:name="com.google.android.c2dm.intent.RECEIVE"/>
          <category android:name="${applicationId}"/>
        </intent-filter>
      </receiver>
      <service android:name="com.adobe.phonegap.push.GCMIntentService" android:exported="false">
        <intent-filter>
          <action android:name="com.google.android.c2dm.intent.RECEIVE"/>
        </intent-filter>
      </service>
      <service android:name="com.adobe.phonegap.push.PushInstanceIDListenerService" android:exported="false">
        <intent-filter>
          <action android:name="com.google.android.gms.iid.InstanceID"/>
        </intent-filter>
      </service>
      <service android:name="com.adobe.phonegap.push.RegistrationIntentService" android:exported="false"/>
    </config-file>
    <framework src="push.gradle" custom="true" type="gradleReference"/>
    <framework src="com.android.support:support-v13:23+"/>
    <framework src="com.google.android.gms:play-services-gcm:9.8+"/>
    <framework src="me.leolin:ShortcutBadger:1.1.11@aar"/>
    <source-file src="src/android/com/adobe/phonegap/push/GCMIntentService.java" target-dir="src/com/adobe/phonegap/push/"/>
    <source-file src="src/android/com/adobe/phonegap/push/PushConstants.java" target-dir="src/com/adobe/phonegap/push/"/>
    <source-file src="src/android/com/adobe/phonegap/push/PushHandlerActivity.java" target-dir="src/com/adobe/phonegap/push/"/>
    <source-file src="src/android/com/adobe/phonegap/push/PushInstanceIDListenerService.java" target-dir="src/com/adobe/phonegap/push/"/>
    <source-file src="src/android/com/adobe/phonegap/push/PushPlugin.java" target-dir="src/com/adobe/phonegap/push/"/>
    <source-file src="src/android/com/adobe/phonegap/push/RegistrationIntentService.java" target-dir="src/com/adobe/phonegap/push/"/>
    <source-file src="src/android/com/adobe/phonegap/push/PermissionUtils.java" target-dir="src/com/adobe/phonegap/push/"/>
    <source-file src="src/android/com/adobe/phonegap/push/BackgroundActionButtonHandler.java" target-dir="src/com/adobe/phonegap/push/"/>
  </platform>
  <platform name="browser">
    <js-module src="www/browser/push.js" name="BrowserPush">
      <clobbers target="PushNotification"/>
    </js-module>
    <asset src="src/browser/ServiceWorker.js" target="ServiceWorker.js"/>
    <asset src="src/browser/manifest.json" target="manifest.json"/>
  </platform>
  <platform name="ios">
    <config-file target="config.xml" parent="/*">
      <feature name="PushNotification">
        <param name="ios-package" value="PushPlugin"/>
      </feature>
    </config-file>
    <config-file target="*-Info.plist" parent="UIBackgroundModes">
      <array>
        <string>remote-notification</string>
      </array>
    </config-file>
    <config-file target="*-Info.plist" parent="GCM_SENDER_ID">
      <string>$SENDER_ID</string>
    </config-file>
    <config-file target="*-Info.plist" parent="IS_GCM_ENABLED">
      <true/>
    </config-file>
    <config-file target="*-Debug.plist" parent="aps-environment">
      <string>development</string>
    </config-file>
    <config-file target="*-Release.plist" parent="aps-environment">
      <string>production</string>
    </config-file>
    <source-file src="src/ios/AppDelegate+notification.m"/>
    <source-file src="src/ios/PushPlugin.m"/>
    <header-file src="src/ios/AppDelegate+notification.h"/>
    <header-file src="src/ios/PushPlugin.h"/>
    <framework src="AddressBook.framework"/>
    <framework src="libsqlite3.tbd"/>
    <framework src="libz.tbd"/>
    <framework src="GoogleCloudMessaging" type="podspec" spec="~> 1.2.0"/>
    <framework src="GGLInstanceID" type="podspec" spec="~> 1.2.1"/>
  </platform>
  <platform name="windows">
    <hook type="after_plugin_install" src="hooks/windows/setToastCapable.js"/>
    <js-module src="src/windows/PushPluginProxy.js" name="PushPlugin">
      <merges target=""/>
    </js-module>
    <config-file target="config.xml" parent="/*">
      <preference name="WindowsToastCapable" value="true"/>
    </config-file>
  </platform>
</plugin>