I'm 开发者_如何学编程working on an application that requires support for forward locking of media files on Android (1.6 and above). Of course, there appears to be no documentation in the APIs on how this might work.
The two questions I have are firstly whether forward locking is supported on Android (and in which versions of the platform) and secondly how to implement it in a program that, for example, downloads DRMed ringtones and wallpapers.
Android isn't that big on DRM, because of the open source heritage of the product. I think you'll have to implement any DRM solution yourself.
Forward lock means that your application offers no way to use protected content on other devices. Literally this means that your application must not have functionality for forwarding (sending) protected content to other devices or for writing to a file system or something else like that. For an open platform like Android that as well might require encrypting/obfuscating your applications content store to prevent access from other apps or from a USB-connected host computer.
A forward lock is identified by a flag in the media metadata (format is media-dependent IMHO). The content is not encrypted. Thus a forward lock is a simple check per content item to disable forwarding functionality as needed.
The whole concept came from and worked with closed embedded devices (like typical mobile phones 5 years ago) and sounds strange with open platforms like Android.
You have to ensure the applications which may want to transfer content to another device via bluetooth etc dont get the permission to transfer it.
OMA has defined how forward lock works. Hence that way you are sure of what has to be done. You have to check the header information of the content to get information on whether it has to be forward locked or not.
精彩评论