Air Native Extension for Background Fetch on iOS 7+ This is an Air native extension for Background Fetch on iOS 7+. It has been developed by FreshPlanetand is used in the game SongPop. NotesThis ANE currently supports fetching one or several URLs (GET requests) while your app is in the background or inactive, and getting the fetched data when your app resumes. Two background modes are supported: - fetch: the background fetch is triggered periodically by iOS
- remote-notification: the background fetch is triggered when your app receives a push notification containing the flag content-available.
InstallationThe ANE binary (AirFacebook.ane) is located in the bin folder. You should add it to your application project's Build Path and make sure to package it with your app (more information here). You also need to setup your app descriptor to support the right background modes:
- <iPhone>
- <InfoAdditions><![CDATA[
- <key>UIBackgroundModes</key>
- <array>
- <string>fetch</string>
- <string>remote-notification</string>
- </array>
- ]]></InfoAdditions>
- </iPhone>
复制代码 Usage- var fetchURL: String = "http://mydomain.com/some/path?param1=value1¶m2=value2"
- // Setup a BackgroundFetch instance (here we use the remote notification mode)
- var backgroundFetch: BackgroundFetch = new BackgroundFetch(BackgroundFetch.BACKGROUND_MODE_REMOTE_NOTIFICATION, fetchURL);
- // If some data is available, do something with it
- if (backgroundFetch.data)
- {
- // do something with data
- }
- // To stop any future background fetch
- backgroundFetch.cancel();
- // or
- BackgroundFetch.cancelAll();
复制代码Here are a few things to keep in mind: - you can create several instances of BackgroundFetch, but you should only create one for each (backgroundMode, url) pair
- if your app is killed, it will be awaken by the OS in a sandbox (the user won't see it) to perform the fetch
- when in sandbox, your ActionScript code won't be executed, just the native code
- when in sandbox, the ANE only has 30 seconds to perform the fetch, so don't try to fetch dozens of URLs
Build from sourceShould you need to edit the extension source code and/or recompile it, you will find an ant build script (build.xml) in the build folder: - cd /path/to/the/ane
- # Setup build configuration
- cd build
- mv example.build.config build.config
- # Edit build.config file to provide your machine-specific paths
- # Build the ANE
- ant
复制代码 Authors
This ANE has been written by Alexis Taugeron and Jay Canty. It belongs to FreshPlanet Inc. and is distributed under the Apache Licence, version 2.0. Join the FreshPlanet team - GAME DEVELOPMENT in NYC
We are expanding our mobile engineering teams.FreshPlanet is a NYC based mobile game development firm and we are looking for senior engineers to lead the development initiatives for one or more of our games/apps. We work in small teams (6-9) who have total product control. These teams consist of mobile engineers, UI/UX designers and product experts.Please contact Tom Cassidy ( tcassidy@freshplanet.com) or apply at http://freshplanet.com/jobs/
相关链接:
https://github.com/freshplanet/ANE-BackgroundFetch
|