With the launch of Windows 8.1 now just a couple of days away for Windows 8 users, Microsoft will also debut a new version of its SkyDrive app for the operating system. In a blog post today, Microsoft SkyDrive team member Adam Czeisler goes over the lessons the team has learned from previous versions of SkyDrive.
The blog post notes that Microsoft has released SkyDrive apps for a number of platforms, which Czeisler says all use a "stateless JSON API in a design pattern." There are also separate SkyDrive sync clients released for Windows Vista, 7, and 8 as well as Mac OS X which he says use a "proprietary sync protocol directly with a lower layer of the SkyDrive service stack." Czeisler adds that the SkyDrive apps have a small file size but can't be used offline and their performance is limited by the speed of the network. The sync clients have the exact opposite advantages and issues. They can work offline and their performance is based on the devices that they are installed on, but browsing files on SkyDrive with the sync clients also means they have to be downloaded to the device.
The SkyDrive and Windows teams tried to come up with a solution for Windows 8.1 that would have the advantages of both the apps and sync clients. The solution is something Microsoft calls "smart files." Czeisler provided the following description of the change:
Smart files are files that contain only metadata and no “body”. In addition they have a special behavior where applications or components on the system can register to be the provider for the contents of the file and when a caller reads the body of the file via certain APIs, these providers are invoked to satisfy this request. By hooking the SkyDrive sync engine into this pipeline as a provider for files in the SkyDrive namespace, we could seamlessly provide access to data stored in the service without forcing all the data to exist on the device before accessing it.
This solution allows the Windows 8.1 version of the SkyDrive app to reduce the amount of storage space it needs on a device while also allowing both offline and online use. In addition, the SkyDrive app was rebuilt atop the Windows Shell APIs, which allowed it to link its performance to either the network or the local device, depending on if any SkyDrive files were actually downloaded.
The blog also goes over some other new SkyDrive Windows 8.1 features, such as being able to view stat numbers when SkyDrive files are downloaded to the desktop, such as file percent complete, throughput and remaining bytes. Also a new Windows component called Change Tracker offers better monitoring of changes in the file system.
In addition, the Photos app and the SkyDrive app in Windows 8.1 now use nearly all of the same source code and binaries, which will allow, among other things, for users to move, rename or edit photos in SkyDrive from the Photos app.
Source: Microsoft | Image via Microsoft