jpDownload - Android / iOS
Seller information: Julien Pierron
jpDownload is a very smart and powerful plugin that's aim is to advantageously replace ShiVa connections. Instead of a long description, here are the main key features:
1. Separate download queue for webservices and files
jpDownload offers 2 distinct functions to establish connections: one for downloading files and one for calling webservices. Each one has its own download queue, that means even if the queue for downloading file is full, any webservice call will be able to be sent immediately because webservices have their own queue.
2. Event based programming
By opposition of the native ShiVa connections (cache and xml apis) where you must check the status of a connection to know when it has finished, jpDownload is based on notification events. As soon as a download ends, you are notified with an event sent to your AIModel.
3. Files are automatically referenced in the cache
Once a file download has ended, the file is automatically referenced in the cache of ShiVa. That means the plugin is totally transparent for using files: if you download an image, you can immediately set it to a HUD component for instance.
4. Very high speed, very low latency
jpDownload has very impressive performances. It is hard to explain with words but there's no comparison point with ShiVa connections that are, in my opinion, very slow.
jpDownload is not only powerful for single files it is also the king for multi-threading. It can download many files at once. As an example, I'm using jpDownload in the project named MySpher for downloading movies jackets on a local server and it loads 65 images by second without any problem, it is so fast.
6. Webservice results are not written on the disk
Webservices are not stored on the disk, they are just kept in memory the time you need them. One more thing that makes jpDownload extremely powerful.
7. POST parameters for webservices
You can easily define POST parameters for your webservice calls. It is as simple as passing a hashtable with your key/values pairs.
8. Designed for iOS and Android, extended to Windows
The plugin has been firstly designed for iOS and Android and is full featured for these platforms. To make the development of a game using this plugin easier, I have developed the windows side of the plugin, so it works on ShiVa Editor and for Windows games.
It works exactly the same on Windows than on the other platforms (event base programming, POST parameters, ...) but native iOS/Android connections are replaced by ShiVa connections. So the Windows side of the plugin has lower performances than the other platforms.
As ShiVa connections have a single download queue, the 2 queues available on iOS are simulated: for instance if you set 8 concurrent downloads, 5 will be assigned to the files and 3 for the webservices.
Information about the iOS library:
- universal build, can run on both iOS simulator and device.
- arm64 architecture ready (64 bits)
- ShiVa 1.9.2 or greater
- The jpEventQueue (v1.5 or greater) plugin is required (free)
- iOS 7.0 or greater
API & Instructions