Using Passsource.com to create Passbook Pages Unable to Change icons - ios

I am using Passsource.com to create Passbook pages. I download the pkpass file and then I change the extension to zip. Once, the zip is created I unzip file and see the contents. I can see the icon, icon#2x, logo and logo#2x files. I replace those files with my own logo files.
Then I change the extension back to pkpass. Once, I do that I am not able to open the file in my iPhone. Any ideas on how to change the icons etc using Passsource

The manifest.json file in the pass contains a SHA-1 hash of every file in the Pass. When you modify the images, you are invalidating that hash – and the OS relies on it. You need to generate a new hash and include it in the manifest file.

Related

What is the header Content type suppose to do?

So i have this ASP.Net app and i want to allow the client to have the option to download an xlsx file, im using the HttpContext.Response to set the Content Type "application/xlsx" and the Content-Disposition sets the file name with the extension .xlsx, the download works correctly.
if I change the file name to .pdf then the file is downloaded as a pdf, when I checked the developer tool network response the Content Type was "application/xlsx" and in another test I change the name fileto .png and the file was downloaded as an image (it did not work, but it was shown as an image)
So what is the content type supposed to do, does it bring some sort of security how do i make sure that the user can only downloads the file associated to the content type?
Im using response.BinaryWrite()
A content type indicates what type of content is being transmitted over http regardless of the content name. For example as you already have tested, you can transmit a pdf file naming it as a .png file.
It is the browser or the operating system that is representing a file with the name .png as an image to you. Another software would treat a pdf file with .png name as a pdf file.
The name of the file matters after the download is complete. But the software that is handling the download (in this case a web browser) actually may need to know the original media type. And you might want to write client side codes that would need to know what type of file is being transferred from the server regardless of the file name.

Share multiple files via UIActivityViewController to Dropbox

My application works with HealthKit data in order to create some reports from the user's workout data and exports them to one or more files (mainly CSV and sometimes GPX files). To allow the user to access these files I present the standard UIActivityViewController passing as items an array of file as [URL] and no application activities (this is the relevant line in the code where files is the array of URLs).
It all works without issues, but today one of my users reported that when multiple files are exported and Dropbox is selected as the target for sharing the files, only the first one is saved and the others are ignored. Is there something I can do about it or is an issue that must be solved by Dropbox? To my understanding it should be the latter, but I can be missing something.
If they are relevant, here are two screenshot of the sharing screen under iOS 13: in the first only one CSV file is being shared and there's a Save to Dropbox option, in the second I'm sharing 2 CSV and 1 GPX files and that option is no longer there. In the second case there's still Copy to Dropbox (hidden) and it leads to only one file being saved, if I use Save to Files, all 3 files are correctly saved.
Marco,
You are right, this is a Dropbox issue, not an issue with your apps export. It looks like the Dropbox app, by default, only accepts one file when received from the export action. Here is the workaround. The native iOS Files app will accept multiple export files and it is possible to add the Dropbox folders to the Files app, effectively allowing the multiple files to be uploaded to Dropbox.
Adding Dropbox to Files app:
Open Files app, on the app main screen, click the three dots in the upper right corner, and select edit.
This will show a ghosted Dropbox file with a toggle switch next to it, tap to add Dropbox to the list of available files.
Exporting the Multiple Files to Dropbox:
Once steps 1 and 2 are complete, go to the desired export app, and select the file you want to export.
In the list of export options, select the iOS Files app (not Dropbox), and then select the Dropbox file within the Files app. Then you can select the Dropbox sub-folder you want the multiple export files to be placed in.
That accomplishes the desired goal in the same number of steps as exporting to DropBox.

Sample files in the documents folder after installing the app

is there a way that I can add sample files to the documents folder of an iOS-app before the app is actually started for the first time. For instance at install time.
For instance, I am writing a text editor and want to have a sample document, that the user can look at showing some of the features of the app. Could this sample be placed in some folder in Xcode and added to the documents folder automatically or do I have to add it from my code, the first time the app starts?
You can access files in sandbox.
Add some resources files. You can load them and save them the way you want.

How to access uploaded files from views

All the uploaded files are stored under
__namespace__/src/__namespace/Controller/logos/file.jpg
and controller file returns only file name "file.jpg" in the view.
So how can I provide path to logo folder in my view in IMG tag
This is where you made the first "Error"! Never store user-data inside your Modules!
When you have users upload data for your module, store them under /data/module-name/! That way you can easily access the files via src="../data/module-name/filename.jpg"
Alternatively, when you want to provide files with your Module and be able to use them, theres a great Module out there called AssetManager, which in turn uses Assetic.

(rails) how to validate whether an uploaded .txt file is not, say, an image file?

I have a upload text file field, and with it I plan to save the file somewhere and then store the location of the file in a database. However, I want to make sure the file they uploaded is a .txt file, and not, say, an image file. I imagine this happens in the validation step. How does one validate such a thing? Also, how do you get the filename of the uploaded file? I could always just check if it said '.txt' but for future reference knowing how to validate without just the filename would be helpful.
Trying to validate the contents of a file based on the filename extension is opening the door for major hackerdom. It's trivial to change the extension and upload the file.
If you are on a Mac/Linux/Unix-based system the OS "file" command is the standard because it looks inside the file for key bytes that flag file types. http://en.wikipedia.org/wiki/File_(Unix) I'm not sure what's available for Windows, but this might help: Determine file type in Ruby
One way of doing it, the simple way really, would be to pass the file through an image loader, preferably one that handles multiple common formats, and see if it throws an error.
The other way is to manually check the file header for common image format headers. For example, .bmp files start with BM. Other formats have their own specific markings you can use.

Resources