Background:
UxD designer with no application development background, some experience with HTML/CSS creation, quick learner
Wants to build:
Simple file sharing application
User credentials required for access
Files will belong to one of a pre-determined category list
Files will be 2-5KB in size each (application should prevent uploading of larger files)
Users should be able to upload file and associate it with the appropriate category (overwriting existing files should not be supported)
Users should be able to browse all categories and download any file
Users will all be on Windows 10
Would like to leverage freely available file repositories (Google Drive, Dropbox, etc)
Application can be either desktop (Windows 10) or web-based (no hard-requirement .. just looking for the best/easiest option)
Future considerations: Community-based features. Ability to add file descriptions/comments/rankings to each uploaded file
Here are my questions:
What development platform(s) would be most suitable for the above objectives?
Is it possible to utilize Google Drive or Dropbox as a centralized file repository for this type of application?
What other considerations might I have overlooked?
What are the biggest limitations/show stoppers in creating the type of application I have described?
Related
I have asked this question so that they can respond that it is possible to create a shortcut for a file that is in the cloud, this access will be created in the device memory, what is the purpose of this: My application has integrated a function to upload a file to the cloud and then run it from a system application like player, gallery, among others, but without having to download anything, but from an application that is installed Installed on the device (nothing external). Thank you very much.
You may want to check Create a shortcut to a file. As mentioned,
To create a shortcut instead of a file stored in Drive, use the files.create method of the API and make sure you set the MIME type application/vnd.google-apps.drive-sdk. Do not upload any content when creating the file.
However, for Google Drive Android API, you may want to check Creating Files for more information.
We have multiple clients using our service.
Each client may create multiple projects.
Each client may upload multiple files to any of his projects.
Each file may have custom meta data associated.
Each client may "share" any of the projects to another client.
Each client may comment any of his or shared projects/files.
My question is about file storing in a cloud. What will best solution? I thought about Amazon S3 but maybe there are better alternatives?
You can explore Box.com solution. They are an advanced file management solution in the cloud and support fine-grained permission management as you explained above. Dropbox for Teams is also another option - The permission model is not as extensive as Box, but the sync client is very stable here. In one of my recent projects, I used box.com mainly due to their fine-grained permission controls
You can also build this on S3 (Dropbox and I guess Box too is behind the scenes built on S3). To achieve all the functionality as you mentioned, it is quite some programming work !
My app runs on Android, iOS, WebSite, WindowsPhone, and now Windows 8. I use SkyDrive already. It's where I store the file(s) my app creates.
It would not be technically difficult to also store my app settings in SkyDrive. This would let me have a "unified" settings experience across devices. That's nice.
Is this allowed? I can do it "technically" can I do it "legally"?
It does not. SkyDrive does not preclude you from using the SkyDrive folders for a repository of a settings file (like a XAML file or something). It is not a violation of ToS.
This used to NOT be allowed. But, I have confirmed this change with a/the SkyDrive PM.
Warning! There is no protected area of SkyDrive for apps to store this sort of information. As a result, the user could delete or tamper with settings files at any time. If you decide to use SkyDrive to store these files, also create a mitigation plan if they are missing or damaged.
I have developed one OOB SL4 applicaton for a food chain, and it stores outlet bills locally in isolated storage, and these bills gets uploaded when Internet connection would be available. All is working fine.
But I have seen that if I open silverlight configuration dialogue->isolated storage, can delete the isolated storage of the application. So If there are 1000 bills are pending to upload gets deleted.
Is there any way to prevent the same?, I don;t think so , I know My documents is one more place, but I am looking for alternate way to store data safely?
I tried the Comtoolkit but seems that behaviour is not consistent and not production quality code
As #NestorArturo states it seems there is no configuration to prevent this.
However, an alternative, for an out of browser application is to use the file system.
File system access. Trusted applications can access System.IO types
and related types that are otherwise unavailable to Silverlight. These
APIs provide direct read and write access to files in user folders on
the local computer. For more information, see How to: Access the Local
File System in Trusted Applications.
A third alternative is to write your own COM component; via this technique, you can gain full access to the system.
I am developing a web application to upload .mp3 files and need to play them. I successfully uploaded the files and saving them in C:/uploads folder. I understand that as it's a web application we need to save them in the Apache web server it self. But I am not sure, where to save them.
Thanks,
Serenity.
You can use content repositories to store uploaded data, I think this is common approach. For instance, take a look at the Apache JackRabbit CR, applying it you won't easy look for uploaded files on hard drive, but you will have web interface, and also some other tools available to connect to repository and show you files there etc.
As alternative to JackRabbit, you can try Alfresco CMS, they both implement JCR, other implementations are listed here (you will them at the bottom of that page).