├── README.md
├── VK_Demo.iml
├── anes
└── VK-v2.0.0.ane
├── assets
├── Default-568h@2x.png
├── Default@2x.png
├── android
│ └── icons
│ │ ├── icon100x100.png
│ │ ├── icon1024x1024.png
│ │ ├── icon114x114.png
│ │ ├── icon120x120.png
│ │ ├── icon128x128.png
│ │ ├── icon144x144.png
│ │ ├── icon152x152.png
│ │ ├── icon16x16.png
│ │ ├── icon29x29.png
│ │ ├── icon32x32.png
│ │ ├── icon36x36.png
│ │ ├── icon40x40.png
│ │ ├── icon48x48.png
│ │ ├── icon50x50.png
│ │ ├── icon512x512.png
│ │ ├── icon57x57.png
│ │ ├── icon58x58.png
│ │ ├── icon72x72.png
│ │ ├── icon76x76.png
│ │ ├── icon80x80.png
│ │ └── icon96x96.png
├── fonts
│ ├── SourceSansPro-Regular.ttf
│ └── SourceSansPro-Semibold.ttf
├── images
│ ├── metalworks
│ │ ├── background-disabled-skin.png
│ │ ├── background-down-skin.png
│ │ ├── background-focused-skin.png
│ │ ├── background-inset-skin.png
│ │ ├── background-popup-skin.png
│ │ ├── background-skin.png
│ │ ├── button-back-disabled-skin.png
│ │ ├── button-back-down-skin.png
│ │ ├── button-back-up-skin.png
│ │ ├── button-call-to-action-down-skin.png
│ │ ├── button-call-to-action-up-skin.png
│ │ ├── button-danger-down-skin.png
│ │ ├── button-danger-up-skin.png
│ │ ├── button-disabled-skin.png
│ │ ├── button-down-skin.png
│ │ ├── button-forward-disabled-skin.png
│ │ ├── button-forward-down-skin.png
│ │ ├── button-forward-up-skin.png
│ │ ├── button-selected-disabled-skin.png
│ │ ├── button-selected-up-skin.png
│ │ ├── button-up-skin.png
│ │ ├── callout-arrow-bottom-skin.png
│ │ ├── callout-arrow-left-skin.png
│ │ ├── callout-arrow-right-skin.png
│ │ ├── callout-arrow-top-skin.png
│ │ ├── check-selected-disabled-icon.png
│ │ ├── check-selected-down-icon.png
│ │ ├── check-selected-up-icon.png
│ │ ├── header-background-skin.png
│ │ ├── horizontal-scroll-bar-thumb-skin.png
│ │ ├── list-accessory-drill-down-icon.png
│ │ ├── list-inset-item-first-selected-skin.png
│ │ ├── list-inset-item-first-up-skin.png
│ │ ├── list-inset-item-last-selected-skin.png
│ │ ├── list-inset-item-last-up-skin.png
│ │ ├── list-inset-item-single-selected-skin.png
│ │ ├── list-inset-item-single-up-skin.png
│ │ ├── list-item-selected-skin.png
│ │ ├── list-item-up-skin.png
│ │ ├── page-indicator-normal-skin.png
│ │ ├── page-indicator-selected-skin.png
│ │ ├── picker-list-icon-disabled.png
│ │ ├── picker-list-icon.png
│ │ ├── picker-list-item-selected-icon.png
│ │ ├── radio-selected-disabled-icon.png
│ │ ├── radio-selected-down-icon.png
│ │ ├── radio-selected-up-icon.png
│ │ ├── search-icon-disabled.png
│ │ ├── search-icon.png
│ │ ├── tab-down-skin.png
│ │ ├── tab-selected-disabled-skin.png
│ │ ├── tab-selected-skin.png
│ │ └── vertical-scroll-bar-thumb-skin.png
│ ├── metalworks_mobile.png
│ ├── metalworks_mobile.tps
│ └── metalworks_mobile.xml
└── ios
│ └── icons
│ ├── icon100x100.png
│ ├── icon1024x1024.png
│ ├── icon114x114.png
│ ├── icon120x120.png
│ ├── icon128x128.png
│ ├── icon144x144.png
│ ├── icon152x152.png
│ ├── icon16x16.png
│ ├── icon29x29.png
│ ├── icon32x32.png
│ ├── icon36x36.png
│ ├── icon40x40.png
│ ├── icon48x48.png
│ ├── icon50x50.png
│ ├── icon512x512.png
│ ├── icon57x57.png
│ ├── icon58x58.png
│ ├── icon72x72.png
│ ├── icon76x76.png
│ ├── icon80x80.png
│ └── icon96x96.png
├── libs
├── Feathers 2.1.swc
├── GizmoDuck.swc
├── Robotlegs 2.swc
└── Starling 1.6.swc
└── src
├── VK_Demo-app.xml
├── VK_Demo.as
└── vk
├── configuration
└── Configuration.as
├── models
└── CapabilitiesModel.as
└── views
├── application
├── ApplicationView.as
└── interfaces
│ └── IApplicationView.as
└── screens
└── HomeScreenView.as
/README.md:
--------------------------------------------------------------------------------
1 | # VK ANE v2.0.0
2 |
3 | PRO Native Extension for Adobe AIR which enables VK social network capabilities
4 | in your apps.
5 |
6 | ## Status
7 |
8 | This demo is fully functional example. You can test ANE functions without any
9 | limitations. If you want it to be running in your application you can purchase
10 | any number of licenses each for up to 3 applications and without any limitations
11 | in time! License server can be found here [http://kavolorn.ru/pro-native-extensions](http://kavolorn.ru/pro-native-extensions).
12 |
13 | ANE supports Android-ARM, Android-x86, iPhone-ARM and iPhone-x86 including x64
14 | bit platforms introduced in Adobe AIR SDK 16. It is build with 16.0.0.292 Adobe
15 | AIR SDK. Repository contains module file for IntelliJ IDEA.
16 |
17 | ## How to run
18 |
19 | The most important thing to keep in mind is that this demo setup is linked with
20 | package id 'ru.kavolorn.ane.VK.Demo'. You can only change this id in your own
21 | license key (where you can have up to 3 ids).
22 |
23 | So let's configure this demo for your own vk application.
24 |
25 | ### Be sure about application id
26 |
27 | Please check if your IDE adds prefix "air." or suffix ".debug" for application ID.
28 | If so, demo won't work.
29 |
30 | See how to disable it [here](https://github.com/kavolorn/VK-ANE/issues/2#issuecomment-86448177).
31 |
32 | ### Application registration process
33 |
34 | Goto [my applications](https://vk.com/apps?act=manage) page and create your
35 | application. After the registration in the options page you can see your vk
36 | application id. Current demo is using 4620596 and you will have your own.
37 |
38 | On the options page fill 3 fields app bundle id for iOS, app id for iOS and
39 | android package name with value 'ru.kavolorn.ane.VK.Demo'. When you will have
40 | your own key you can link your vk app with your own application id.
41 |
42 | Also you should fill certificate fingerprint for Android. We will get this
43 | fingerprint directly from our extension later.
44 |
45 | ### Configuring application descriptor
46 |
47 | Now let's apply our vk application id in application descriptor file
48 | VK_Demo-app.xml. You should change 4620596 number with your own number in this
49 | lines for iOS setup:
50 |
51 | ```xml
52 | CFBundleURLTypes
53 |
54 |
55 | CFBundleURLSchemes
56 |
57 | vk4620596
58 |
59 |
60 |
61 | ```
62 |
63 | Add this lines if you modifying your own application descriptor.
64 |
65 | Make sure that you have registered activities in your android manifest file:
66 |
67 | ```xml
68 |
69 |
70 |
71 |
72 |
73 | ```
74 |
75 | ### ActionScript side
76 |
77 | You can check how I use native extension in HomeScreenView.as file. It is the
78 | main file in our project.
79 |
80 | For Android setup you can get you certificate fingerprint by calling this method:
81 |
82 | ```actionscript
83 | trace(VK.getInstance().getCertificateFingerprint());
84 | ```
85 |
86 | After that you are able to put value in your vk application options page.
87 |
88 |
89 | ## Requirements
90 |
91 | iOS 7.0+, Android 10+
92 |
93 | ## Version history
94 |
95 | ### 2.0.0
96 |
97 | - Updated VK iOS SDK to version 1.1.12.
98 | - Added support for native share dialogs for both Android and iOS.
99 | - Reduced binary size.
100 |
101 | Upgrade notes:
102 |
103 | - VK.getInstance().getUserToken() now returns object rather than json string.
104 | - New activity for sharing should be added to manifest.
105 | - Activities are now in different namespace than before.
106 |
107 | ### 1.2.0
108 |
109 | - Updated VK Android SDK to version 1.3.10.
110 | - Added support for for user email extraction.
111 |
112 | ### 1.1.0
113 |
114 | - Improved compatibility with 3rd party extensions on iOS.
115 |
116 | ### 1.0.1
117 |
118 | - Fixed bug that causes offline app crash.
119 |
120 | ### 1.0.0
121 |
122 | - Improved authorization and execution processes.
123 | - Added waking up and logout functionality.
124 | - Added getSdkVersion, getApiVersion and getUserToken methods.
125 | - Added debug information output control.
126 |
127 | ### 0.2.1
128 |
129 | - Minor bugfixes.
130 |
131 | ### 0.2.0
132 |
133 | - Removed time limitation for license.
134 |
135 | ### 0.1.1
136 |
137 | - Fixed initialization bug.
138 |
139 | ### 0.1.0
140 |
141 | - Initial release.
142 |
143 |
--------------------------------------------------------------------------------
/VK_Demo.iml:
--------------------------------------------------------------------------------
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 |
--------------------------------------------------------------------------------
/anes/VK-v2.0.0.ane:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/anes/VK-v2.0.0.ane
--------------------------------------------------------------------------------
/assets/Default-568h@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/Default-568h@2x.png
--------------------------------------------------------------------------------
/assets/Default@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/Default@2x.png
--------------------------------------------------------------------------------
/assets/android/icons/icon100x100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon100x100.png
--------------------------------------------------------------------------------
/assets/android/icons/icon1024x1024.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon1024x1024.png
--------------------------------------------------------------------------------
/assets/android/icons/icon114x114.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon114x114.png
--------------------------------------------------------------------------------
/assets/android/icons/icon120x120.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon120x120.png
--------------------------------------------------------------------------------
/assets/android/icons/icon128x128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon128x128.png
--------------------------------------------------------------------------------
/assets/android/icons/icon144x144.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon144x144.png
--------------------------------------------------------------------------------
/assets/android/icons/icon152x152.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon152x152.png
--------------------------------------------------------------------------------
/assets/android/icons/icon16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon16x16.png
--------------------------------------------------------------------------------
/assets/android/icons/icon29x29.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon29x29.png
--------------------------------------------------------------------------------
/assets/android/icons/icon32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon32x32.png
--------------------------------------------------------------------------------
/assets/android/icons/icon36x36.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon36x36.png
--------------------------------------------------------------------------------
/assets/android/icons/icon40x40.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon40x40.png
--------------------------------------------------------------------------------
/assets/android/icons/icon48x48.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon48x48.png
--------------------------------------------------------------------------------
/assets/android/icons/icon50x50.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon50x50.png
--------------------------------------------------------------------------------
/assets/android/icons/icon512x512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon512x512.png
--------------------------------------------------------------------------------
/assets/android/icons/icon57x57.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon57x57.png
--------------------------------------------------------------------------------
/assets/android/icons/icon58x58.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon58x58.png
--------------------------------------------------------------------------------
/assets/android/icons/icon72x72.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon72x72.png
--------------------------------------------------------------------------------
/assets/android/icons/icon76x76.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon76x76.png
--------------------------------------------------------------------------------
/assets/android/icons/icon80x80.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon80x80.png
--------------------------------------------------------------------------------
/assets/android/icons/icon96x96.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/android/icons/icon96x96.png
--------------------------------------------------------------------------------
/assets/fonts/SourceSansPro-Regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/fonts/SourceSansPro-Regular.ttf
--------------------------------------------------------------------------------
/assets/fonts/SourceSansPro-Semibold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/fonts/SourceSansPro-Semibold.ttf
--------------------------------------------------------------------------------
/assets/images/metalworks/background-disabled-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/background-disabled-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/background-down-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/background-down-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/background-focused-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/background-focused-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/background-inset-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/background-inset-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/background-popup-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/background-popup-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/background-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/background-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/button-back-disabled-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/button-back-disabled-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/button-back-down-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/button-back-down-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/button-back-up-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/button-back-up-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/button-call-to-action-down-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/button-call-to-action-down-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/button-call-to-action-up-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/button-call-to-action-up-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/button-danger-down-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/button-danger-down-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/button-danger-up-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/button-danger-up-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/button-disabled-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/button-disabled-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/button-down-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/button-down-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/button-forward-disabled-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/button-forward-disabled-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/button-forward-down-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/button-forward-down-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/button-forward-up-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/button-forward-up-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/button-selected-disabled-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/button-selected-disabled-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/button-selected-up-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/button-selected-up-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/button-up-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/button-up-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/callout-arrow-bottom-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/callout-arrow-bottom-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/callout-arrow-left-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/callout-arrow-left-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/callout-arrow-right-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/callout-arrow-right-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/callout-arrow-top-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/callout-arrow-top-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/check-selected-disabled-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/check-selected-disabled-icon.png
--------------------------------------------------------------------------------
/assets/images/metalworks/check-selected-down-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/check-selected-down-icon.png
--------------------------------------------------------------------------------
/assets/images/metalworks/check-selected-up-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/check-selected-up-icon.png
--------------------------------------------------------------------------------
/assets/images/metalworks/header-background-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/header-background-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/horizontal-scroll-bar-thumb-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/horizontal-scroll-bar-thumb-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/list-accessory-drill-down-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/list-accessory-drill-down-icon.png
--------------------------------------------------------------------------------
/assets/images/metalworks/list-inset-item-first-selected-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/list-inset-item-first-selected-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/list-inset-item-first-up-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/list-inset-item-first-up-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/list-inset-item-last-selected-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/list-inset-item-last-selected-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/list-inset-item-last-up-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/list-inset-item-last-up-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/list-inset-item-single-selected-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/list-inset-item-single-selected-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/list-inset-item-single-up-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/list-inset-item-single-up-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/list-item-selected-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/list-item-selected-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/list-item-up-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/list-item-up-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/page-indicator-normal-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/page-indicator-normal-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/page-indicator-selected-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/page-indicator-selected-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/picker-list-icon-disabled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/picker-list-icon-disabled.png
--------------------------------------------------------------------------------
/assets/images/metalworks/picker-list-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/picker-list-icon.png
--------------------------------------------------------------------------------
/assets/images/metalworks/picker-list-item-selected-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/picker-list-item-selected-icon.png
--------------------------------------------------------------------------------
/assets/images/metalworks/radio-selected-disabled-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/radio-selected-disabled-icon.png
--------------------------------------------------------------------------------
/assets/images/metalworks/radio-selected-down-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/radio-selected-down-icon.png
--------------------------------------------------------------------------------
/assets/images/metalworks/radio-selected-up-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/radio-selected-up-icon.png
--------------------------------------------------------------------------------
/assets/images/metalworks/search-icon-disabled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/search-icon-disabled.png
--------------------------------------------------------------------------------
/assets/images/metalworks/search-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/search-icon.png
--------------------------------------------------------------------------------
/assets/images/metalworks/tab-down-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/tab-down-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/tab-selected-disabled-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/tab-selected-disabled-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/tab-selected-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/tab-selected-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks/vertical-scroll-bar-thumb-skin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks/vertical-scroll-bar-thumb-skin.png
--------------------------------------------------------------------------------
/assets/images/metalworks_mobile.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/images/metalworks_mobile.png
--------------------------------------------------------------------------------
/assets/images/metalworks_mobile.tps:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | fileFormatVersion
5 | 1
6 | variation
7 | main
8 | verbose
9 |
10 | autoSDSettings
11 |
12 | allowRotation
13 |
14 | quiet
15 |
16 | premultiplyAlpha
17 |
18 | shapeDebug
19 |
20 | dpi
21 | 72
22 | dataFormat
23 | sparrow
24 | textureFileName
25 | metalworks_mobile.png
26 | flipPVR
27 |
28 | ditherType
29 | NearestNeighbour
30 | backgroundColor
31 | 0
32 | libGdx
33 |
34 | filtering
35 |
36 | x
37 | Linear
38 | y
39 | Linear
40 |
41 |
42 | shapePadding
43 | 2
44 | jpgQuality
45 | 80
46 | pngOptimizationLevel
47 | 2
48 | textureSubPath
49 |
50 | textureFormat
51 | png
52 | borderPadding
53 | 2
54 | maxTextureSize
55 |
56 | width
57 | 2048
58 | height
59 | 2048
60 |
61 | fixedTextureSize
62 |
63 | width
64 | -1
65 | height
66 | -1
67 |
68 | reduceBorderArtifacts
69 |
70 | algorithmSettings
71 |
72 | algorithm
73 | MaxRects
74 | freeSizeMode
75 | Best
76 | sizeConstraints
77 | POT
78 | forceSquared
79 |
80 | forceWordAligned
81 |
82 | maxRects
83 |
84 | heuristic
85 | Best
86 |
87 | basic
88 |
89 | sortBy
90 | Best
91 | order
92 | Ascending
93 |
94 |
95 | andEngine
96 |
97 | minFilter
98 | Linear
99 | packageName
100 | Texture
101 | javaFileName
102 | metalworks.java
103 | wrap
104 |
105 | s
106 | Clamp
107 | t
108 | Clamp
109 |
110 | magFilter
111 | MagLinear
112 |
113 | dataFileName
114 | metalworks_mobile.xml
115 | mainExtension
116 |
117 | forceIdenticalLayout
118 |
119 | outputFormat
120 | RGBA8888
121 | autoAliasEnabled
122 |
123 | trimSpriteNames
124 |
125 | globalSpriteSettings
126 |
127 | scale
128 | 1
129 | scaleMode
130 | Smooth
131 | innerPadding
132 | 0
133 | extrude
134 | 1
135 | trimThreshold
136 | 1
137 | trimMode
138 | Trim
139 | heuristicMask
140 |
141 |
142 | fileList
143 |
144 | metalworks
145 |
146 | ignoreFileList
147 |
148 | replaceList
149 |
150 | commonDivisorX
151 | 1
152 | commonDivisorY
153 | 1
154 |
155 |
156 |
--------------------------------------------------------------------------------
/assets/images/metalworks_mobile.xml:
--------------------------------------------------------------------------------
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 |
--------------------------------------------------------------------------------
/assets/ios/icons/icon100x100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon100x100.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon1024x1024.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon1024x1024.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon114x114.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon114x114.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon120x120.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon120x120.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon128x128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon128x128.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon144x144.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon144x144.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon152x152.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon152x152.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon16x16.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon29x29.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon29x29.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon32x32.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon36x36.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon36x36.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon40x40.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon40x40.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon48x48.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon48x48.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon50x50.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon50x50.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon512x512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon512x512.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon57x57.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon57x57.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon58x58.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon58x58.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon72x72.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon72x72.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon76x76.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon76x76.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon80x80.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon80x80.png
--------------------------------------------------------------------------------
/assets/ios/icons/icon96x96.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/assets/ios/icons/icon96x96.png
--------------------------------------------------------------------------------
/libs/Feathers 2.1.swc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/libs/Feathers 2.1.swc
--------------------------------------------------------------------------------
/libs/GizmoDuck.swc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/libs/GizmoDuck.swc
--------------------------------------------------------------------------------
/libs/Robotlegs 2.swc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/libs/Robotlegs 2.swc
--------------------------------------------------------------------------------
/libs/Starling 1.6.swc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kavolorn/VK-ANE/3227fc7efd5714a3875f23a84bad3b02a1dd3f08/libs/Starling 1.6.swc
--------------------------------------------------------------------------------
/src/VK_Demo-app.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
12 |
13 |
15 | ru.kavolorn.ane.VK.Demo
16 |
17 |
18 | VK ANE
19 |
20 |
21 | VK ANE
22 |
23 |
26 | 1.0.0
27 |
28 |
29 | 1.0.0
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 | ru.kavolorn.ane.VK
46 |
47 |
48 |
49 |
50 |
51 | VK_Demo.swf
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 | true
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 | portrait
94 |
95 |
96 | true
97 |
98 |
99 | true
100 |
101 |
102 | direct
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
129 | icons/icon16x16.png
130 | icons/icon29x29.png
131 | icons/icon32x32.png
132 | icons/icon36x36.png
133 | icons/icon40x40.png
134 | icons/icon48x48.png
135 | icons/icon50x50.png
136 | icons/icon57x57.png
137 | icons/icon58x58.png
138 | icons/icon72x72.png
139 | icons/icon76x76.png
140 | icons/icon80x80.png
141 | icons/icon96x96.png
142 | icons/icon100x100.png
143 | icons/icon114x114.png
144 | icons/icon120x120.png
145 | icons/icon128x128.png
146 | icons/icon144x144.png
147 | icons/icon152x152.png
148 | icons/icon512x512.png
149 |
150 | icons/icon1024x1024.png
151 |
152 |
153 |
155 |
156 |
157 |
158 |
159 |
160 |
161 |
162 |
163 |
164 |
165 |
166 |
167 |
168 |
169 |
170 |
171 |
172 |
173 |
179 |
180 |
181 |
182 |
183 |
184 |
185 |
186 | UIDeviceFamily
188 |
189 | 1
190 | 2
191 |
192 |
193 |
194 |
195 |
196 | CFBundleURLTypes
197 |
198 |
199 | CFBundleURLSchemes
200 |
201 | vk4620596
202 |
203 |
204 |
205 |
206 |
207 |
208 |
209 | ]]>
210 |
211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 |
219 |
220 |
221 |
222 |
223 | high
224 |
225 |
226 |
228 |
229 |
230 |
231 |
232 |
233 |
234 |
236 |
237 |
238 |
239 |
240 |
241 |
242 |
243 |
244 |
245 |
246 |
247 |
248 |
249 |
250 |
251 |
252 |
253 |
254 |
255 |
256 |
257 | ]]>
258 |
259 |
260 |
261 |
262 |
263 |
264 |
265 |
266 |
267 |
--------------------------------------------------------------------------------
/src/VK_Demo.as:
--------------------------------------------------------------------------------
1 | package
2 | {
3 | import flash.display.Sprite;
4 | import flash.display.StageAlign;
5 | import flash.display.StageScaleMode;
6 | import flash.events.Event;
7 | import flash.geom.Rectangle;
8 |
9 | import starling.core.Starling;
10 |
11 | import vk.views.application.ApplicationView;
12 |
13 | [SWF(frameRate="60")]
14 | public class VK_Demo extends Sprite
15 | {
16 | private static var _starling:Starling;
17 |
18 | public function VK_Demo()
19 | {
20 | stage.align = StageAlign.TOP_LEFT;
21 | stage.scaleMode = StageScaleMode.NO_SCALE;
22 | mouseEnabled = mouseChildren = false;
23 |
24 | loaderInfo.addEventListener(Event.COMPLETE, completeHandler);
25 | }
26 |
27 | protected function completeHandler(event:Event):void
28 | {
29 | Starling.handleLostContext = true;
30 | Starling.multitouchEnabled = true;
31 |
32 | _starling = new Starling(ApplicationView, stage);
33 | Starling.current.enableErrorChecking = false;
34 | Starling.current.start();
35 |
36 | this.stage.addEventListener(Event.RESIZE, resizeHandler, false, int.MAX_VALUE, true);
37 | this.stage.addEventListener(Event.DEACTIVATE, deactivateHandler, false, 0, true);
38 | }
39 |
40 | protected function resizeHandler(event:Event):void
41 | {
42 | Starling.current.stage.stageWidth = stage.stageWidth;
43 | Starling.current.stage.stageHeight = stage.stageHeight;
44 |
45 | const viewPort:Rectangle = Starling.current.viewPort;
46 | viewPort.width = stage.stageWidth;
47 | viewPort.height = stage.stageHeight;
48 |
49 | try
50 | {
51 | Starling.current.viewPort = viewPort;
52 | }
53 | catch (error:Error)
54 | {
55 | }
56 | }
57 |
58 | protected function deactivateHandler(event:Event):void
59 | {
60 | if (stage)
61 | {
62 | Starling.current.stop(true);
63 | stage.addEventListener(Event.ACTIVATE, activateHandler, false, 0, true);
64 | }
65 | }
66 |
67 | private function activateHandler(event:Event):void
68 | {
69 | if (stage)
70 | {
71 | stage.removeEventListener(Event.ACTIVATE, activateHandler);
72 | Starling.current.start();
73 | }
74 | }
75 | }
76 | }
77 |
--------------------------------------------------------------------------------
/src/vk/configuration/Configuration.as:
--------------------------------------------------------------------------------
1 | package vk.configuration
2 | {
3 | import robotlegs.bender.extensions.eventCommandMap.api.IEventCommandMap;
4 | import robotlegs.bender.framework.api.IConfig;
5 | import robotlegs.bender.framework.api.IInjector;
6 | import robotlegs.gizmoduck.extensions.contextView.ContextView;
7 | import robotlegs.gizmoduck.extensions.mediatorMap.api.IMediatorMap;
8 |
9 | import vk.views.application.interfaces.IApplicationView;
10 |
11 | public class Configuration implements IConfig
12 | {
13 | [Inject]
14 | public var injector:IInjector;
15 |
16 | [Inject]
17 | public var mediatorMap:IMediatorMap;
18 |
19 | [Inject]
20 | public var commandMap:IEventCommandMap;
21 |
22 | [Inject]
23 | public var contextView:ContextView;
24 |
25 | public function configure():void
26 | {
27 | (contextView.view as IApplicationView).initialize();
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/vk/models/CapabilitiesModel.as:
--------------------------------------------------------------------------------
1 | package vk.models
2 | {
3 | import flash.system.Capabilities;
4 |
5 | public class CapabilitiesModel
6 | {
7 | public static function get dpiScale():Number
8 | {
9 | if (isIos)
10 | {
11 | return Capabilities.screenDPI / 326;
12 | }
13 | else
14 | {
15 | return Capabilities.screenDPI / 320;
16 | }
17 | }
18 |
19 | public static function get isIosDevice():Boolean
20 | {
21 | if (Capabilities.manufacturer.indexOf("iOS") > -1)
22 | {
23 | return true;
24 | }
25 | return false;
26 | }
27 |
28 | public static function get isIosEmulator():Boolean
29 | {
30 | if (Capabilities.version.indexOf("IOS") > -1 && !isIosDevice)
31 | {
32 | return true;
33 | }
34 | return false;
35 | }
36 |
37 | public static function get isIos():Boolean
38 | {
39 | return isIosDevice || isIosEmulator;
40 | }
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/src/vk/views/application/ApplicationView.as:
--------------------------------------------------------------------------------
1 | package vk.views.application
2 | {
3 | import feathers.controls.LayoutGroup;
4 | import feathers.controls.ScreenNavigator;
5 | import feathers.controls.ScreenNavigatorItem;
6 | import feathers.layout.AnchorLayout;
7 | import feathers.motion.transitions.ScreenSlidingStackTransitionManager;
8 | import feathers.themes.MetalWorksMobileTheme;
9 |
10 | import robotlegs.bender.framework.api.IContext;
11 | import robotlegs.bender.framework.impl.Context;
12 | import robotlegs.gizmoduck.bundles.mvcs.MVCSBundle;
13 | import robotlegs.gizmoduck.extensions.contextView.ContextView;
14 |
15 | import starling.animation.Transitions;
16 | import starling.display.Sprite;
17 |
18 | import vk.configuration.Configuration;
19 | import vk.views.application.interfaces.IApplicationView;
20 | import vk.views.screens.HomeScreenView;
21 |
22 | public class ApplicationView extends Sprite implements IApplicationView
23 | {
24 | private var _context:IContext;
25 | private var _transitionManager:ScreenSlidingStackTransitionManager;
26 |
27 | private static var _theme:MetalWorksMobileTheme;
28 |
29 | public static function get theme():MetalWorksMobileTheme
30 | {
31 | return _theme;
32 | }
33 |
34 | private static var _navigator:ScreenNavigator;
35 |
36 | public static function get navigator():ScreenNavigator
37 | {
38 | return _navigator;
39 | }
40 |
41 | private static var _overlay:LayoutGroup;
42 |
43 | public static function get overlay():LayoutGroup
44 | {
45 | return _overlay;
46 | }
47 |
48 | public function ApplicationView()
49 | {
50 | _context = new Context().install(MVCSBundle).configure(Configuration, new ContextView(this));
51 | }
52 |
53 | public function initialize():void
54 | {
55 | _theme = new MetalWorksMobileTheme();
56 |
57 | _navigator = new ScreenNavigator();
58 | _navigator.addScreen("home", new ScreenNavigatorItem(new HomeScreenView()));
59 | addChild(_navigator);
60 |
61 | _transitionManager = new ScreenSlidingStackTransitionManager(_navigator);
62 | _transitionManager.duration = 0.4;
63 | _transitionManager.delay = 0.2;
64 | _transitionManager.ease = Transitions.EASE_OUT;
65 | _transitionManager.skipNextTransition = true;
66 |
67 | _overlay = new LayoutGroup();
68 | _overlay.layout = new AnchorLayout();
69 | _overlay.width = stage.stageWidth;
70 | _overlay.height = stage.stageHeight;
71 | addChild(_overlay);
72 |
73 | _navigator.showScreen('home');
74 | }
75 | }
76 | }
77 |
--------------------------------------------------------------------------------
/src/vk/views/application/interfaces/IApplicationView.as:
--------------------------------------------------------------------------------
1 | package vk.views.application.interfaces
2 | {
3 | public interface IApplicationView
4 | {
5 | function initialize():void;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/vk/views/screens/HomeScreenView.as:
--------------------------------------------------------------------------------
1 | package vk.views.screens
2 | {
3 | import feathers.controls.Button;
4 | import feathers.controls.Header;
5 | import feathers.controls.Label;
6 | import feathers.controls.LayoutGroup;
7 | import feathers.controls.Screen;
8 | import feathers.controls.ScrollText;
9 | import feathers.layout.AnchorLayout;
10 | import feathers.layout.AnchorLayoutData;
11 | import feathers.layout.VerticalLayout;
12 |
13 | import ru.kavolorn.ane.VK;
14 | import ru.kavolorn.ane.VKError;
15 | import ru.kavolorn.ane.VKEvent;
16 | import ru.kavolorn.ane.VKScope;
17 |
18 | import starling.events.Event;
19 |
20 | import vk.models.CapabilitiesModel;
21 |
22 | public class HomeScreenView extends Screen
23 | {
24 | public static const SCOPE:Array = [
25 | VKScope.WALL,
26 | VKScope.AUDIO,
27 | VKScope.FRIENDS,
28 | VKScope.EMAIL,
29 | VKScope.PHOTOS
30 | ];
31 |
32 | private var _header:Header;
33 | private var _buttonsGroup:LayoutGroup;
34 | private var _scrollText:ScrollText;
35 | private var _statusBar:Label;
36 |
37 | public function HomeScreenView():void
38 | {
39 | VK.setDebug(true);
40 |
41 | VK.getInstance().initialize("4620596", "eyJsaWNlbnNlIjoie1widGltZXN0YW1wXCI6MTQyMzA2MTI1MixcImlkc1wiOltcInJ1Lmthdm9sb3JuLmFuZS5WSy5EZW1vXCJdfSIsInNpZ25hdHVyZSI6ImZqSHBYbUhVUDJJcnhQQ00wZXZzbkx5Q040RGNrUm5DcWdTTWRMMlVaZHFDWlRLdms0c3J3VjZsNGdSb0ZRRlNlbWE0cVBSYVF0S0FBbXJpZnBRSmNiVTdBbU42aWl1T014XC9sQmNOUFNldHpHTVNRNFNDRmQrVjRCNjhGY2VtTmQ4YlB4SmJIMUk2Z21PdmlvMXpraHd3U1h2VkVxc2VrekFwbThYZFdYNEpOVGdRaGVQNnNqWVZsVk1nMFhHeVljTm5sbmVNeGpZQThLQXV3ZFpjcExWMlV0YnpFWW5UbTJlK2pTMmk1eGI4YStFWVdOczhDYTkwSzdhSDMzOVFmZnRTQkRFV3BGVlwvUjltTmpVQ055R3QyK1pycDJXK0g1Vk1yaHRvMTJcL0hGZGtpdVltUkJsZUhwazNNblwvQkpJVWQ3MzU4TVZ4bzU5MFhcL01WQXR2dW93PT0ifQ==");
42 |
43 | // Fires up if initialization was completed with errors
44 | VK.getInstance().addEventListener(VKEvent.INITIALIZATION_ERROR, function (event:VKEvent):void
45 | {
46 | trace("Initialization error:", event.message);
47 | });
48 |
49 | // Fires up usualy right before INITIALIZATION_SUCCESS and notifies us about waked up session
50 | VK.getInstance().addEventListener(VKEvent.SESSION_WAKED_UP, function (event:VKEvent):void
51 | {
52 | trace(JSON.stringify(VK.getInstance().getUserToken()));
53 | _statusBar.text = "User is logged in.";
54 | });
55 |
56 | // Extension was successfully initialized
57 | VK.getInstance().addEventListener(VKEvent.INITIALIZATION_SUCCESS, function (event:VKEvent):void
58 | {
59 | trace("Initialization success:", event.message);
60 | trace("Current SDK version:", VK.getInstance().getSdkVersion());
61 | trace("Current API version:", VK.getInstance().getApiVersion());
62 | });
63 |
64 | // Fires up if token is expired
65 | VK.getInstance().addEventListener(VKEvent.TOKEN_HAS_EXPIRED, function (event:VKEvent):void
66 | {
67 | trace(event.message);
68 | _statusBar.text = "User is logged out.";
69 | });
70 |
71 | // Fires up if user denied access in login screen
72 | VK.getInstance().addEventListener(VKEvent.USER_DENIED_ACCESS, function (event:VKEvent):void
73 | {
74 | trace(event.message);
75 | _statusBar.text = "User is logged out.";
76 | });
77 |
78 | // Fires up when SDK received new token
79 | VK.getInstance().addEventListener(VKEvent.RECEIVED_NEW_TOKEN, function (event:VKEvent):void
80 | {
81 | trace(JSON.stringify(VK.getInstance().getUserToken()));
82 | _statusBar.text = "User is logged in.";
83 | });
84 |
85 | // Fires up when SDK renewed token
86 | VK.getInstance().addEventListener(VKEvent.RENEWED_TOKEN, function (event:VKEvent):void
87 | {
88 | trace(JSON.stringify(VK.getInstance().getUserToken()));
89 | _statusBar.text = "User is logged in.";
90 | });
91 | }
92 |
93 | override protected function initialize():void
94 | {
95 | layout = new AnchorLayout();
96 |
97 | _header = new Header();
98 | _header.layoutData = new AnchorLayoutData(0, 0, NaN, 0);
99 | _header.useExtraPaddingForOSStatusBar = true;
100 | _header.title = "VK ANE Demo";
101 | addChild(_header);
102 |
103 | _buttonsGroup = new LayoutGroup();
104 | _buttonsGroup.layout = new VerticalLayout();
105 | (_buttonsGroup.layout as VerticalLayout).gap = 10 * CapabilitiesModel.dpiScale;
106 | (_buttonsGroup.layout as VerticalLayout).padding = 10 * CapabilitiesModel.dpiScale;
107 | (_buttonsGroup.layout as VerticalLayout).horizontalAlign = VerticalLayout.HORIZONTAL_ALIGN_JUSTIFY;
108 | _buttonsGroup.layoutData = new AnchorLayoutData(0, 0, NaN, 0);
109 | (_buttonsGroup.layoutData as AnchorLayoutData).topAnchorDisplayObject = _header;
110 | addChild(_buttonsGroup);
111 |
112 | if (!CapabilitiesModel.isIos)
113 | {
114 | var fingerprintButton:Button = new Button();
115 | fingerprintButton.label = 'App fingerprint';
116 | fingerprintButton.addEventListener(Event.TRIGGERED, function (event:Event):void
117 | {
118 | trace(VK.getInstance().getCertificateFingerprint());
119 | _scrollText.text = "certificateFingerprint\n\n" + VK.getInstance().getCertificateFingerprint();
120 | });
121 | _buttonsGroup.addChild(fingerprintButton);
122 | }
123 |
124 | var getAppPermissionsButton:Button = new Button();
125 | getAppPermissionsButton.label = 'App permissions';
126 | getAppPermissionsButton.addEventListener(Event.TRIGGERED, function (event:Event):void
127 | {
128 | VK.getInstance().execute(
129 | {
130 | method: 'account.getAppPermissions',
131 | parameters: {},
132 | complete: completeHandler,
133 | error: errorHandler
134 | });
135 | });
136 | _buttonsGroup.addChild(getAppPermissionsButton);
137 |
138 | var wallPostButton:Button = new Button();
139 | wallPostButton.label = 'Wall post';
140 | wallPostButton.addEventListener(Event.TRIGGERED, function (event:Event):void
141 | {
142 | VK.getInstance().execute(
143 | {
144 | method: 'wall.post',
145 | parameters: {
146 | message: "It's alive! Alive!!"
147 | },
148 | complete: completeHandler,
149 | error: errorHandler
150 | });
151 | });
152 | _buttonsGroup.addChild(wallPostButton);
153 |
154 | var friendsButton:Button = new Button();
155 | friendsButton.label = 'Friends list';
156 | friendsButton.addEventListener(Event.TRIGGERED, function (event:Event):void
157 | {
158 | VK.getInstance().execute(
159 | {
160 | method: 'friends.getOnline',
161 | parameters: {
162 | online_mobile: 1
163 | },
164 | complete: completeHandler,
165 | error: errorHandler
166 | });
167 | });
168 | _buttonsGroup.addChild(friendsButton);
169 |
170 | var audioButton:Button = new Button();
171 | audioButton.label = 'Audio search';
172 | audioButton.addEventListener(Event.TRIGGERED, function (event:Event):void
173 | {
174 | VK.getInstance().execute(
175 | {
176 | method: 'audio.search',
177 | parameters: {
178 | q: "Red Hot Chili Peppers",
179 | count: 10
180 | },
181 | complete: completeHandler,
182 | error: errorHandler
183 | });
184 | });
185 | _buttonsGroup.addChild(audioButton);
186 |
187 | var shareButton:Button = new Button();
188 | shareButton.label = 'Share';
189 | shareButton.addEventListener(Event.TRIGGERED, function (event:Event):void
190 | {
191 | VK.getInstance().share({
192 | text : "This is a super resource with professional Adobe AIR native extensions.",
193 | link : {
194 | text : "PRO Native Extensions",
195 | url : "http://kavolorn.ru/pro-native-extensions"
196 | },
197 | photos : [
198 | // Pre uploaded set of photos
199 | "photo-30022666_375485324"
200 | ],
201 | complete : function(postId:String) {
202 | _scrollText.text = "Sharing completed. Post id " + postId + ".";
203 | },
204 | cancel : function() {
205 | _scrollText.text = "Sharing was canceled.";
206 | }
207 | });
208 | });
209 | _buttonsGroup.addChild(shareButton);
210 |
211 | var logoutButton:Button = new Button();
212 | logoutButton.label = 'Logout';
213 | logoutButton.addEventListener(Event.TRIGGERED, function (event:Event):void
214 | {
215 | VK.getInstance().logout();
216 | _statusBar.text = "User is logged out.";
217 | });
218 | _buttonsGroup.addChild(logoutButton);
219 |
220 | _statusBar = new Label();
221 | _statusBar.layoutData = new AnchorLayoutData(NaN, 0, 0, 0);
222 | _statusBar.text = "User is logged out.";
223 | addChild(_statusBar);
224 |
225 | _scrollText = new ScrollText();
226 | _scrollText.layoutData = new AnchorLayoutData(0, 0, 0, 0);
227 | (_scrollText.layoutData as AnchorLayoutData).topAnchorDisplayObject = _buttonsGroup;
228 | (_scrollText.layoutData as AnchorLayoutData).bottomAnchorDisplayObject = _statusBar;
229 | addChild(_scrollText);
230 | }
231 |
232 | private function completeHandler(response:Object, request:Object)
233 | {
234 | trace('complete', JSON.stringify(response));
235 |
236 | _scrollText.text = request.method + "\n\n" + JSON.stringify(response);
237 | }
238 |
239 | private function errorHandler(error:Object, request:Object)
240 | {
241 | trace('error', JSON.stringify(error));
242 |
243 | if (error.errorCode == VKError.VK_API_ERROR && error.vkErrorCode == 5)
244 | {
245 | _statusBar.text = "User is logged out.";
246 | VK.getInstance().authorize(SCOPE, true, false, false);
247 | }
248 | else if (error.errorCode == VKError.VK_API_REQUEST_HTTP_FAILED)
249 | {
250 | // Is internet connection working?
251 | }
252 | }
253 | }
254 | }
255 |
--------------------------------------------------------------------------------