Well now, I figured it out myself.
You can simply get raw (binary)data of the image form general pasteboard by sending
dataForPasteboardType:(NSSting*)PasteboardType
message to general pasteboard, if it's copied from Apple's built-in Mobile Safari or Photos App. (@"com.compuserve.gif" for the pasteboard type in my case)
I myself feel a bit foolish for not having checked all the passible methods sooner. :(
My confusion comes from items
property of the UIPasteboard.
I thought that items
are containing all of data of current pasteboard. So I try to save that array from pasteboard and want to use it later, but I were totally wrong.
As documented in UIPasteboard Class Reference, the items
property contains dictionary with key being the representation type and the "value" the object associated with that type.
At this point of time, The "value" refers really "value" of the representation, not the data of that type. This meaning of the "value" is the same as the value of thesetValue: forPasteboardType:
method.
On the other words, you cannot retrieve raw(binary) data of the image from items
property, even if you set the image to the pasteboard by sending setData: forPasteboardType:
message.(I tested it on IOS 7)
In addition, raw data of the image from items
property in IOS 6.0 seems a bug of that OS version. (This may not true, it's just my opinion)