🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

解決済

1回答

1875閲覧

Swift5とDropboxAPIを連携させる方法を知りたい

Leader731

総合スコア20

ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2019/09/16 12:12

前提・実現したいこと

発生したエラーの原因と解決法を知りたいです。

こちらのサイトを参考にしてDropboxに格納されたファイルを操作するシステムをswiftで作っています。

プログラムを書こう! 実務や自作アプリ開発で習得した役に立つソフトウェア技術情報を発信するブログ

https://www.paveway.info/search?q=Dropbox+API

まずはこちらの内容にしたがって設定を済ませました。

SwiftでDropbox APIを使用する準備を行う。

https://www.paveway.info/entry/2018/06/11/pweditor_swift_dropbox_api_preparation

その後にこちらのサンプルコードを実装している時に問題が発生しました。

SwiftのDropbox APIで初期化処理を行う。

https://www.paveway.info/entry/2018/06/12/pweditor_swift_dropbox_api_initialize

DropboxAPIのサンプルコードを実装中に発生したエラーは以下のとおりです。

発生している問題・エラーメッセージ

エラー一覧
コードとエラー

エラーメッセージ ・Expected ',' separator ・Closure expression is unused ・Use of unresolved identifier 'DropboxClientsManager' など

該当のソースコード

Swift

1 2import UIKit 3 4@UIApplicationMain 5class AppDelegate: UIResponder, UIApplicationDelegate { 6 7 var window: UIWindow? 8 9 10 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { 11 // アプリキーを登録します。 12 // アプリキーは事前準備で入手してください。 13 DropboxClientsManager.setupWithAppKey(("アプリキー");//エラー Expected ',' separator 14 15 // サインイン済みか否かチェックします。 16 // この処理はDropbox APIにアクセスする前に行えばよいです。 17 if let = DropboxClientsManager.authorizedClient { //エラー Closure expression is unused 18 // サインイン済みの場合の処理を記述してください。 19 20 } else { //エラー Closure expression 21 // 未サインインの場合の処理を記述してください。 22 } 23 } 24 25 func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any]) -> Bool { 26 if let authResult = DropboxClientsManager.handleRedirectURL(url) { //エラー Use of unresolved identifier 'DropboxClientsManager' 27 // 認証結果後に呼び出されます。 28 // Dropboxから認証結果authResultが渡されるので、認証結果により処理を分岐します。 29 switch authResult { 30 case .success: 31 // サインインに成功した場合の処理を記述してください。 32 break 33 34 case .error(let error, let description): 35 // サインインに失敗した場合の記述してください。 36 break 37 38 default: 39 // 上記以外、何もしません。 40 // 基本的にこのパスには来ないはずです。 41 break 42 } 43 } 44 } 45 46 func applicationWillResignActive(_ application: UIApplication) { 47 // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. 48 // Use this method to pause ongoing tasks, disable timers, and invalidate graphics rendering callbacks. Games should use this method to pause the game. 49 } 50 51 func applicationDidEnterBackground(_ application: UIApplication) { 52 // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. 53 // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. 54 } 55 56 func applicationWillEnterForeground(_ application: UIApplication) { 57 // Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background. 58 } 59 60 func applicationDidBecomeActive(_ application: UIApplication) { 61 // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. 62 } 63 64 func applicationWillTerminate(_ application: UIApplication) { 65 // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. 66 } 67 68 69} 70 71

試したこと

ググって原因を調べましたが判明しませんでした。

補足情報(FW/ツールのバージョンなど)

Swift5を使用しています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

誤りはたくさんあります。まず、

Swift

1DropboxClientsManager.setupWithAppKey(("アプリキー");

開くカッコが二重になっています。

あと、まさかですが、アプリキーはちゃんとし取得した文字列にしていますよね???
また、以下の宣言もありません。

Swift

1import SwiftyDropbox

パッと見でも、上記に気づきました。

まず、下記の公式サンプルアプリをDLし、

https://github.com/dropbox/PhotoWatch

試しに動かしてみてはいかがですか?

投稿2019/09/16 14:08

hameji

総合スコア1380

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問