Forum Discussion

Bob S.15's avatar
Bob S.15
Collaborator | Level 9
7 years ago

uploadURL unrecognized selector

I'm trying to upload my app's old Dropbox support to the newest SDK.  Has uploadURL been killed?  All I see is "upload" -- but there's no argument for the source file, so how do you use it?  Some examples for how to use this stuff would be nice.    DBRoulette is kind of useless for most purposes.

EDIT: Ok I managed to find an example buried in this byzantine documentation.  But it is out of date.  There are new arguments in the declaration here different from the example.  

http://dropbox.github.io/dropbox-sdk-obj-c/api-docs/latest/Classes/DBFILESUserAuthRoutes.html#/c:objc(cs)DBFILESUserAuthRoutes(im)uploadData:mode:autorename:clientModified:mute:propertyGroups:inputData:

And neither one is working for me.  Here is what I am doing -- it says "Instance method '-uploadData:mode:autorename:clientModfified:mute:propertyGroups:inputData:' not found"

Is there some way to see the actual function headers or declarations on my machine, since the documentation is so contradictory?  I choose "Go To Definition/Declaration" from XCode or or search files for "uploadData" and nothing comes up.

[[[[DBClientsManager authorizedClient].filesRoutes uploadData:finalPath
         mode: [[[DBFILESWriteMode alloc] initWithOverwrite] autorelease]
         autorename: @(NO)
         clientModfified:nil
         mute: @(NO)
         propertyGroups:nil
         inputData: fileData]
      setResponseBlock:^(DBFILESFileMetadata *result, DBFILESUploadError *routeError, DBRequestError *error) {
  • Bob S.15's avatar
    Bob S.15
    Collaborator | Level 9

    Okay I finally got this by grepping the SDK folder for "uploadData" and finding the true arguments to this function.   I had "Modified" spelled wrong, and there was an additional argument 'strictConflict' that was missing.  The working call looks like this.

    [[[[DBClientsManager authorizedClient].filesRoutes uploadData:finalPath
             mode: [[[DBFILESWriteMode alloc] initWithOverwrite] autorelease]
             autorename: @(NO)
             clientModified:nil
             mute: @(NO)
             propertyGroups:nil
             strictConflict:nil
             inputData: fileData]

     

    Seriously though am I just old or is this documentation crazy hard to navigate?  Plus it is not up to date with conflicting information all over the place...

About Dropbox API Support & Feedback

Node avatar for Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.5,950 PostsLatest Activity: 2 hours ago
352 Following

If you need more help you can view your support options (expected response time for an email or ticket is 24 hours), or contact us on X or Facebook.

For more info on available support options for your Dropbox plan, see this article.

If you found the answer to your question in this Community thread, please 'like' the post to say thanks and to let us know it was useful!