Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Live SDK で SkyDrive連携アプリを作ろう
Search
tanaka_733
March 30, 2013
Technology
0
1.1k
Live SDK で SkyDrive連携アプリを作ろう
2013/3/30 めとべや東京でのセッション
tanaka_733
March 30, 2013
Tweet
Share
More Decks by tanaka_733
See All by tanaka_733
SRENEXT 2020 [B5] New RelicのSREに学ぶSREのためのNew Relic活用法
tanaka733
2
10k
Calling PowerShell from CSharp
tanaka733
0
1.8k
Garbage Collection in .NET Framework
tanaka733
4
2.9k
New Features in Visual Studio 2013
tanaka733
0
1.1k
Starting Unity for Windows Store App
tanaka733
0
840
とあるインフラエンジニアのAzure活用
tanaka733
2
590
ぼくの考えた割と普通(c)なデプロイ戦略
tanaka733
1
11k
ASP.NET MVC4 Web APIをバックエンドにして作るストアとWindows Phoneプッシュ通知アプリ
tanaka733
0
1.8k
Yurufuwa_CSharp.pdf
tanaka733
0
5.1k
Other Decks in Technology
See All in Technology
プラットフォームエンジニアリングとは何であり、なぜプラットフォームエンジニアリングなのか
doublemarket
1
550
Noを伝える技術2025: 爆速合意形成のためのNICOフレームワーク速習 #pmconf2025
aki_iinuma
2
1.2k
Oracle Cloud Infrastructure:2025年11月度サービス・アップデート
oracle4engineer
PRO
1
120
その設計、 本当に価値を生んでますか?
shimomura
3
190
Claude Code はじめてガイド -1時間で学べるAI駆動開発の基本と実践-
oikon48
43
26k
なぜフロントエンド技術を追うのか?なぜカンファレンスに参加するのか?
sakito
9
2k
AI駆動開発によるDDDの実践
dip_tech
PRO
0
290
eBPFとwaruiBPF
sat
PRO
4
1.7k
生成AI時代の自動E2Eテスト運用とPlaywright実践知_引持力哉
legalontechnologies
PRO
0
110
AIにおける自由の追求
shujisado
3
470
プロダクトマネジメントの分業が生む「デリバリーの渋滞」を解消するTPMの越境
recruitengineers
PRO
3
460
履歴テーブル、今回はこう作りました 〜 Delegated Types編 〜 / How We Built Our History Table This Time — With Delegated Types
moznion
16
9.5k
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
76
5.2k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Being A Developer After 40
akosma
91
590k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Why Our Code Smells
bkeepers
PRO
340
57k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
4 Signs Your Business is Dying
shpigford
186
22k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
The Language of Interfaces
destraynor
162
25k
Transcript
Live SDK で SkyDrive連携アプリを 作ろう @tanaka_733 Room metro #15 東京
3/30 (Sat)
Agenda はじめに SkyDriveとは Live Connect SDK とは SkyDrvie SDK をストアアプリで使ってみよう
自己紹介 (@tanaka_733) めとべや東京のスタッフです 趣味の開発でC# • Windows ストアアプリ • Windows Phone
アプリ • Kinect ストアアプリは数本リリース • はてな動画(仮) • SkyRecorder <= 開発中、今回のテーマ
めとべや東京はCOD2013 に出ます COD2013とは… • 全国のコミュニティが集まって各地で勉強会を開きます • http://cod.ms/Pages/default.aspx めとべや東京は… • 東京会場にて、私が話します!
• テーマは ストアアプリのプッシュ通知 • 先日話したセッションから、サーバーサイドを掘り下げます
セッションの目的 SkyDrive を APIから操作してみる ストアアプリで SkyDrive連携をやってみる
Agenda はじめに SkyDriveとは Live Connect SDK とは SkyDrvie SDK をストアアプリで使ってみよう
SkyDrive とは Microsoftのオンラインストレージ Windows8 から標準対応(通常のファイルシステムと同じ感覚) 現在は7GBまで、以前から利用している場合は25GBのことも • 有償オプションで追加可能 (¥800/年・20 GB
から)
SkyDrive を使えるデバイス デスクトップ/ネイティブアプリ •Windows Vista, Windows 7, Max OS X
•Windows Phone, iOS(iPhone iPad), Android その他、Webページ経由
他クラウドストレージ ストレージ • iCloud • Google Drive • Dropbox (最近話題の)ノート系
• Evernote • Google Keep http://windows.microsoft.com/ja-jp/skydrive/compare
Agenda はじめに SkyDriveとは Live Connect SDK とは SkyDrvie SDK をストアアプリで使ってみよう
Live Connect SDK • ドキュメントとメディアの操作 SkyDrive • 連絡先とカレンダーの操作 Hotmail •
インスタントメッセージ Messenger • ユーザーの認証とプロファイル情報へのアクセス Live
SkyDrive API 使用上の制約 ユーザーが明示的に要求したとき以外はSkyDrive にファイルをアップロードしない • 自動バックアップの保存先としては使えない SkyDrive が適した状況では SkyDrive
を使う。 • ドキュメントや写真の管理はSkyDriveで SkyDrive に対する信頼を損なわないようにする • いかがわしいファイルを置いたりしない http://msdn.microsoft.com/ja-jp/library/live/hh826521.aspx
Live Connect SDKの特徴 •どの情報にアクセスできるか、作成できるかを「スコープ」と呼ばれる概念でサポート •いわゆる認証・認可の認可 スコープとアクセス許可 •APIはいわゆるREST形式 •SDKで使う場合はパスを指定(後でサンプルにて) RESTアクセス •認証はマイクロソフトアカウントを使用
•Windowsストアアプリでは、Windows8 のサインイン機能を使用 シングルサインオン •認証はOauth 2.0形式 •SDKを使う場合、ほぼ意識しない OAuth 2.0
API使いたい、でもいきなりはめんどそう… photo credit: Tambako the Jaguar via photopin cc
Interactive Live SDK http://isdk.dev.live.com/ISDK.aspx
Agenda はじめに SkyDriveとは Live Connect SDK とは SkyDrvie SDK をストアアプリで使ってみよう
準備:SDKのインストール http://msdn.microsoft.com/ja-JP/live/ff621310
準備:プロジェクトへの参照の追加
準備:アプリの登録と関連付け Live SDKを使う場合、ダッシュボードからアプリの名前を登録し、 プロジェクトで関連付けておく必要があります。 ※ 開発者アカウントが必要です
シナリオ①: ログイン 明示的にログインボタンを作成 • Guideline に従う必要あり • http://msdn.microsoft.com/ja-jp/library/windows/apps/xaml/Hh968445(v=win.10).aspx 自動でログイン •
ログインしないとアプリの機能が実現できないような場合、 • 起動直後にログイン画面に移行 いずれの場合も、ログイン画面はSDKにより提供されます アカウントはSSOのみの模様(別ユーザーを選択できない) UI経由のユーザーの同意が必要なので自動テスト不可…
シナリオ①: ログイン 今回載せているコードはこちらにあります https://gist.github.com/tanaka-takayoshi/5272456
シナリオ②: ユーザー情報の取得
返り値が Dictionary … 実装が、Dynamic サポートしている型になっている
Dynamic で dynamic に解決…? メリット: DictionaryのKeyによるアクセスをプロパティ的に記述できる デメリット: LINQなどラムダ式を使ったメソッドを呼び出せない =>(発表後注): IEnumerable<dynamic>
もしくは LINQでCast<dynamic> すればよい。gistのコードは更新済みです
アルバムディレクトリを取得して、 サムネイル付きで表示する
アルバムディレクトリを取得して、 サムネイル付きで表示する
アルバムディレクトリを取得して、 サムネイル付きで表示する
ストレージクォータを取得する
ファイルをアップロードする
まとめ ストアアプリからSkyDriveはSDKでお手軽にアクセスできる (SDKでは)サインインはSSOのみ 返り値が IDictionary<string, object> なので、 Interactive Live SDK
でJSONの構造を確認しながらコーディング
おまけ: Metro Icons Maker Store App, WP8, WP7 対応のアイコンを作成できるツールです。 •
Windows Phone Icons Maker からフォークさせていただきました。 プロジェクトページはこちら • http://techblog.hilife-jp.info/metro-icons-maker/ アルファ版です • 正式版を WPF4.5+Livet で作成中… (と言って早2か月) • MS-PLなOSSです: https://github.com/tanaka-takayoshi/Metro-Icons-Maker
おまけ: Metro Icons Maker