タグ

ブックマーク / kabakiyo.hatenadiary.org (13)

  • ViewModelのTombstonedの処理について - 遅咲きのエンジニア

    Windows Phone SDK 7.1からTombstonedに加えDormantという状態が加わったためページを復元する処理がややこしくなりました。そこでViewModelを保存し復元するときの注意点をまとめてみました。 その前にTombstonedやDormantについて知りたい方はこちらの記事を参考にしてください。 Tombstoned(トゥームストーン)とDormant(ドーマント)について Tombstonedのときはアプリケーションとページの2つの状態を保存し復元することを考慮する必要がありますが、ここではページの状態についての説明します。 保存のタイミング OnNavigatedFromメソッドでページを離れるときにページの状態を保存します。 private ViewModel _viewModel; protected override void OnNavigated

    ViewModelのTombstonedの処理について - 遅咲きのエンジニア
  • Amazon Product Advertising API for Windows Phone - 遅咲きのエンジニア

    AmazonのProduct Advertising APIを使うにはシグネチャを生成しなければならないのでとても面倒です。 それを簡単に使えるようにしたC#のサンプルプログラムがAmazonのサイトにありますが、残念ながらWindows Phoneではコンパイルが通らなかったので、Windows Phone用に修正したものをCodePlexにアップしました。 Amazon Product Advertising API Signed Requests for Windows Phone 使い方は簡単で、 アクセスキーID(Product Advertising AP]Iのアカウントを生成するともらえる) シークレットアクセスキー(Product Advertising APIのアカウントを生成するともらえる) ecsのドメイン(ecs.amazonaws.jp) アソシエイトID(Ama

    Amazon Product Advertising API for Windows Phone - 遅咲きのエンジニア
    kaorun
    kaorun 2011/12/05
    おおお
  • エミュレータにPeopleハブを表示する方法 - 遅咲きのエンジニア

    エミュレータを起動すると通常ではIEと設定しか表示されません。 そうするとPeopleハブのスクリーンショットを撮ろうと思っても実機ではスクリーンショットが撮れないので実機を写真に撮るしか方法がありません。それではきれいな画像を撮ることもできないでしょう。 そこでエミュレータにPeopleハブを表示させることができればPeopleハブのスクリーンショットを撮ることができます。 やり方は簡単です。Microsoft.Smartdevice.Connectivity.dllを使います。 私の環境ではこちらに存在しました。 C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.SmartDevice.Connectivity\ v4.0_10.0.0.0__b03f5f7f11d50a3a\Microsoft.Smartdevice.Conne

    エミュレータにPeopleハブを表示する方法 - 遅咲きのエンジニア
  • Reminder(リマインダー)を使ってみる - 遅咲きのエンジニア

    リマインダーは前回の記事で書いたAlarm(アラーム)に似ています。どちらも指定した時刻にお知らせをすることは同じですが少し異なります。 これがリマインダーの画面です。 アラームは指定した時刻に音楽を流すことができましたが、リマインダーは指定した時刻にデフォルトの音が鳴ります。アラームはタイトルが「アラーム」固定でしたが、リマインダーはタイトルを自由に決まられます。 特にリマインダーは通知の画面をタップしたときに指定したページへナビゲーションすることができるので、その時に詳細な予定を表示させるといったことも可能です。 このことからアラームはまさにアラームとしての用途しかありませんが、リマインダーは会議の予定や友達との約束の時間などのスケジュール全般に向いています。 次はアラームとリマインダーの違いです。○は変更可能です。 アラーム リマインダー タイトル 固定 ○ 音楽 ○ 固定 再通知

    Reminder(リマインダー)を使ってみる - 遅咲きのエンジニア
  • WP7 Mango:SystemTrayのカスタマイズ - 遅咲きのエンジニア

    Windows Phone OS 7.0に比べてWindows Phone OS 7.1になってからSystemTrayのプロパティが増えました。 [7.0] [7.1] これを比較すると、、 BackgroundColor(背景色) ForegroundColor(前景色) Opacity(透明度) ProgressIndicator(インジケータの進捗) のプロパティが増えています。 ProgressIndicatorはロードしているときやアップデートしているときにその状態を表示するオブジェクトです。使い方はこのようになります。 main.xaml <phone:PhoneApplicationPage x:Class="SystemTray.MainPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentati

  • Windows Phone Shake Gestures Libraryの紹介 - 遅咲きのエンジニア

    スマートフォンでは端末を動かすことでジェスチャーを表現することがありますが、その一つとして"振る"ジェスチャーを行うライブラリ「Shake Gestures Library」の紹介です。 このライブラリを利用すればアプリケーションに"振る"ジェスチャーを簡単に組み込むことができるようになります。 組み込み方は非常に簡単です。今回の例は"振った軸"を表示するアプリです。 1.ShakeGestures.dllを参照に加える。 2.そしてコードは以下のとおり。 // usingの追加 using ShakeGestures; namespace Shake { public partial class MainPage : PhoneApplicationPage { public MainPage() { InitializeComponent(); // ShakeGestureイベントの

    Windows Phone Shake Gestures Libraryの紹介 - 遅咲きのエンジニア
  • Windows Phone 7(Mango)でFlashlight、QRコード、AR(Augmented Reality)のサンプル - 遅咲きのエンジニア

    これまでのWindows Phone 7ではカメラにアクセスすることができなかったのでARのようにカメラのデータを利用するアプリを作成することができませんでした。 一部ではMicrosoft.Phone.Media.Extended.dllを利用した方法が出回っていましたがこのdllは正式のものではないのでそのdllを利用したアプリはマーケットプレースの審査を通ることはありませんでした。 そこでWindows Phone 7の時期バージョンのMangoからはカメラデータに直接アクセスできるようになったことから、Flashlight、QRコードの認識、AR(Augmented Reality)のプログラミングが可能となりました。MangoのバージョンアップによってカメラへのアクセスがAPIとして提供されるのでカメラを利用したアプリを開発できるようになります。 そこで今回は3つのサンプルを作成

  • Windows Phone 7のtombstone または tombstoningについて - 遅咲きのエンジニア

    tombstoneというのはアプリケーションやページの状態を保つための仕組みのことで、簡単に言うとページが遷移して戻ってきたときに元の状態に戻すことです。 ページが遷移した後に戻ってきたら入力したデータがなくなっていたら嫌ですよね?別のアプリケーションから戻ってきたら入力していたデータがなくなっていたら嫌ですよね? そのような問題を解決するためにtombstoneはあります。 状態を保つといっても主に状態は二つに分かれます。アプリケーションの状態と各ページごとの状態です。 アプリケーションの状態はPhoneApplicationServiceのイベントによって管理されます。 App.xamlにこう記述されています。 <Application.ApplicationLifetimeObjects> <!--Required object that handles lifetime event

    Windows Phone 7のtombstone または tombstoningについて - 遅咲きのエンジニア
    kaorun
    kaorun 2010/12/21
  • Windows Phone 7を1週間使ってみた感想 - 遅咲きのエンジニア

    11月30日(火)にNegri ElectronicsにSamsung Omina 7を注文して届いたのが12月6日(月)。1週間も待たずに購入することができました。 そんなOmnia7をiPhoneユーザーが1週間使って感じたことをまとめてみます。 Windows Phone 7の印象 良いところ 電源を入れた瞬間、明るくてきれいなハブ。ドラッグすると非常にヌルヌルしてます。 UIがかっこいい!Windows Phone 7ならではの細かい動きがちりばめられている。リストが上下の端っこまで来たらボヨヨンッとバウンドする、タイルの画像がうにょうにょ動く、Bing・メールで横にスライドするとタイトルと内容が時間差で表示される、ボタンの押したところによってへこみ方が変わる(タイルの画面とかMusicのアルバムとか)、Calendarの月表示で上下にスライドするとそれぞれの項目が上下から表示され

    Windows Phone 7を1週間使ってみた感想 - 遅咲きのエンジニア
  • Windows Phone 7でDataTemplateSelectorを使う - 遅咲きのエンジニア

    DataTemplateSelectorを使うとListBoxなどのアイテムの表示方法をそれぞれのアイテムによって変更することができます。例えばFacebookでは画像や動画といったアイテムが存在するため、それぞれのアイテムによって画像を表示したり動画を表示したりすることが可能となります。 これをWindows Phone 7で利用しようと思っても残念ながら今の段階ではできません。WPFでは利用できるのですがSilverlightでは実装されていないからです。そこでSilverlightでDataTemplateSelectorを利用する例が下記にあります。 Silverlight DataTemplateSelector - CodeProject これを参考にWindows Phone 7でも利用してみます。 まずはDataTemplateSelectorの定義。 DataTempla

    Windows Phone 7でDataTemplateSelectorを使う - 遅咲きのエンジニア
    kaorun
    kaorun 2010/11/05
  • Microsoft Advertising SDK for Windows Phone 7を使ってみる 〜その1〜 - 遅咲きのエンジニア

    Microsoft Advertisingとは、マイクロソフトの広告配信システムです。 これをWindows Phone 7に組み込むには下記のSDKが必要になります。 ダウンロードはここから。Microsoft Advertising SDK for Windows Phone 7 SDKに含まれるAdControlというのを貼り付けるだけで、そのコントロールがマイクロソフトのサーバーから広告を受け取って配信してくれます。 アプリケーションへの組み込み アプリケーションにAdControlを組み込むにはApplicationIdとAdUnitIDが必要になります。ApplicationIdはアプリケーションを識別するID、AdUnitIDは各コントロール(広告ごと)に割り当てられるIDです。それら2つでワンセットです。 そのためにまずはApplicationIdとAdUnitIdが必要に

    Microsoft Advertising SDK for Windows Phone 7を使ってみる 〜その1〜 - 遅咲きのエンジニア
    kaorun
    kaorun 2010/10/25
  • Windows Phone 7でJson.NETを使う - 遅咲きのエンジニア

    Json.NETはここからダウンロード。CodePlex Archive 解凍してBin/DotNet/Newtonsoft.Json.Silverlight.dllを参照に追加すれば利用できます。 Windows Phone 7ではWebAPIから返るJsonを受け取るときに利用したり、データを保存するときにオブジェクトをJsonに変換して保存し、読み込むときにはJsonをオブジェクトに変換して利用できます。 ついでにJson.NETについて Json.NETでできることは大きく分けて3つ。 Serialize(オブジェクト→Json文字列) Deserialize(Json文字列→オブジェクト) Parse(文字列→Jsonオブジェクト) 以下はそのサンプルです。それぞれの用途を簡単に示しています。 using System; using System.Collections.Gene

    Windows Phone 7でJson.NETを使う - 遅咲きのエンジニア
  • Windows Phone 7のアプリケーションにTrial版の機能を搭載 - 遅咲きのエンジニア

    Windows Phone 7のアプリケーションにTrial版の機能を搭載することができます。 プログラムの中でTrial版を判断するには、Microsoft.Phone.dllアセンブリの Microsoft.Phone.Marketplace.LicenseInformationを利用します。LicenseInformationはIsTrialというメソッドを持っているのでこれを使います。 var license = new Microsoft.Phone.Marketplace.LicenseInformation(); if (license.IsTrial()) { MessageBox.Show("Trial"); } else { MessageBox.Show("Not Trial"); } これだけでTrial版の判定ができます。マーケットプレースからTrial版としてイ

    Windows Phone 7のアプリケーションにTrial版の機能を搭載 - 遅咲きのエンジニア
    kaorun
    kaorun 2010/09/21
  • 1