読者です 読者をやめる 読者になる 読者になる

酢ろぐ!

カレーが嫌いなスマートフォンアプリプログラマのブログ。

Windowsストアアプリで共有チャームを使わずにメールアプリを起動する(メールを送信する)

Windowsストアアプリでは共有コントラクトを使用したチャーム経由での共有機能が備わっています。 共有コントラクトの仕組みについては「Windowsストアアプリの共有コントラクトの仕組み - 酢ろぐ!」、共有コントラクトを使ってデータを共有する方法につい…

C#でコマンドライン引数を取得する

C#

C#でパラメータを指定して実行した時に、プログラム側でパラメータを拾いたいです。System名前空間のEnvironmentクラスのGetCommandLineArgsメソッドを使えば、コマンドライン引数を取得することが可能です。 [STAThread] static void Main() { // コマンド…

LINQを使って特定の文字列が格納されているインデックスを取得する

C#

文字列を格納した配列があり、LINQを使って特定の文字列が格納されているインデックスが知りたいことがあります。 var list = new[] { "松平", "上杉", "木下", "津田", "島津", "木下", "尼子" }; var foundItems = list.Select((item, index) => new { Ind…

Windowsストアアプリで現在表示に使われている言語を取得する

Windowsストアアプリで、ユーザーによって現在の表示設定されている言語を取得します。 現在、表示に使われている言語を取得する Windows.Globalization名前空間を使って表示言語を取得する Windows.Globalization名前空間のApplicationLanguagesクラスのLan…

WindowsストアアプリでC++/Cxで作ったネイティブライブラリをプラットフォームによって参照するdllアセンブリを切り替えたい

大昔にhttp://ch3cooh.hatenablog.jp/entry/20130124/1359015988のですが、Surface RT(ARM)向けとパソコン(x86)向けではCPUアーキテクチャが異なるため、同じネイティブライブラリを使うことができません。 ということで、本記事では、プラットフォームごと…

C#を使ってTwitterでシェアされたツイートの数を調べる

C#

記事がシェアされた数を調べる方法がないか考えていると、Googleリーダーのトップに「la casa de nieve » Blog Archive » twitterのURLシェア数をAPI1廃止後でも(たぶん)取得できる方法」が掲載されていました。 Twitterでシェアされた数というのは、うち…

Xamarin.iOSで乱数を使う

乱数を取得するには、System名前空間のRandomクラスを使います。 乱数を取得する Random r = new Random(); var randomNumber = r.Next(); 0以上10未満の乱数を取得する Random r = new Random(); var randomNumber = r.Next(10); 5以上10未満の乱数を取得す…

Windows PhoneでGeoCoordinateWatcher(GPS/位置情報測位)クラスを使って位置情報を取得する

概要 Windows Phone Location Serviceへアクセスする手段を提供してます。 Windows Phone 7.5("Mango"アップデート)からはWindows Phone エミュレータの標準機能としてGPSシミュレータが付きますが、それ以前の開発環境では「GPSをエミュレートする」を参考…

Xamarin.iOSでUIAlertViewを使ってアラートを表示する

すみません。更新が長いこと空いてしまっていました。今日からまたXamarin Studioを使った開発Tipsを発信していきたいと思います。 Xamarin.iOSでアラートを表示させてみましょう。.NET Frameworkでアラート表示と言えばMessageBox.Showメソッドを使いますが…

Xamarin.iOSで現在時刻を取得する

Xamarin.iOSを使って現在時刻を取得します。 var currentTime = DateTime.UtcNow; Console.WriteLine ("Date/Time: " + currentTime); 関連記事 Xamarin.iOSを使ってアプリ開発する際に逆引きとしてお使いください。 Xamarin.iOSの開発Tipsの記事まとめ - 酢…

Xamarin.iOSでバッググランド処理するスレッドを起動する

新しいスレッドを作ります。 var thread = new Thread(NewThreadMethod as ThreadStart); thread.Start(); 新しいスレッドが呼び出されるメソッドを作ります。 [Export("NewThreadMethod")] void NewThreadMethod() { using(var pool = new NSAutoreleasePoo…

Xamarin.iOSでバイブレーションとシステムサウンドの再生を鳴動させる

バイブレーションさせる SystemSound.Vibrate.PlaySystemSound(); cafファイルを再生する var sound = new SystemSound(new NSUrl("audioFile.caf")); sound.PlaySystemSound();

Xamarin.iOSでパラパラ画像を変えるアニメーションを実装する

Xamarin.iOSでパラパラアニメを実装します。 // パラパラアニメさせる画像の一覧をリストに追加する var images = new List<UIImage>(); images.Add(UIImage.FromFile("img1.png")); images.Add(UIImage.FromFile("img2.png")); images.Add(UIImage.FromFile("img3.pn</uiimage>…

WindowsストアアプリでGyrometer(ジャイロセンサー)を使って角速度を取得する

概要 Windows.Devices.Sensors名前空間のGyrometerクラスは、Windowsストアアプリからデバイスのジャイロセンサー(角速度センサー)へアクセスする手段を提供してます。 加速度センサーは、「角度に対する傾斜角を計測する」センサーで、デバイスの向いている…

Xamarin.iOSでフォルダのパスを取得する

.NET FrameworkではEnvironment.GetFolderPathメソッドを使うことでフォルダパスを取得することができます。Xamarin.iOSをiPhoneシミュレータで実行した場合に取得できるフォルダパスを調べてみました。 string dir = string.Empty; dir = Environment.GetFo…

Xamarin.iOSでインターネット上のコンテンツをダウンロードして表示させる

本記事では、Xamarin.iOSを使って、ネットワークを利用してインターネット上のコンテンツをダウンロードし、UILabelに表示させてみましょう。インターネット上のコンテンツと一口で言っても画像を含めバイナリファイルや、テキストファイルなど様々なタイプ…

Xamarin Studioを使ってみよう!その2 - Xamarin.MacでHello Worldアプリを作ってみた

Xmarin Studioを起動すると、Visual Studioのようにプロジェクトを作成するウィザードが立ち上がる。今回は、Mac用のHelloWorldアプリを作成してみましょう。Xamarin Studioを起動して、ソリューションから[New]を選択します。ウィザードには、Xamarin.Macと…

Xamarin StudioがリリースされたのでMacにインストールする

11日前に書いた記事が下書きのままだったので、適当に説明文を付け加えて投稿してみる。Xamarin Studioは、C#を使ってAndroidやiOSのアプリケーションを開発することが出来るIDEです。過去にMonoTouchやMono for Android(MonoDroid)と呼ばれていた時代には、…

ドキュメントフォルダーのパスを取得する

C#

Documentsフォルダを取得する方法を忘れてしまったので備忘録代わりにメモしておきます。 var dir = Environment.GetFolderPath( Environment.SpecialFolder.MyDocuments); 例えば、Documentsフォルダ配下にアプリケーション専用のフォルダを作成したい場合…

C#でDateTimaからUNIX時刻へ変換する

C#

iOSアプリの移植をするにあたり、UNIX時刻*1を取得する必要が出てきました。具体的に言うと、iOSではtimeIntervalSince1970メソッドを使えば、NSDateオブジェクトで保持している時刻からUNIX時刻を求めることができます。 // 期限切れとなる時間をUNIX時刻で…

Xamarin.iOSでステータスバー上のNetworkActivityIndicatorを表示/非表示させる

Xamarin.iOSでステータスバー上のNetworkActivityIndicatorを表示/非表示させます。NetworkActivityIndicatorとはステータスバーにあるぐるぐるです。 インジゲータを表示します。NetworkActivityIndicatorVisibleプロパティをtrueに設定すると表示し、false…

Windows Phoneで文字列のクラス名から動的にインスタンスを生成させる

例えば、下記のリストのように「HogeCsharp名前空間」に「Nantoka」という任意のクラスがあるとします。ここでは「Nantoka」というstring型で定義された文字列からNantokaクラスのインスタンスを生成する方法を紹介します。 public class Nantoka { public N…

Windows PhoneでWrapPanelを使ってサムネイル画像の表示をおこなう

ListBoxは、アイテム毎がStackPanel扱いになっているのか縦一行でしか表示出来ませんでした。 ItemsControlをWrapPanelの上に載せてコントロールを横置きします。但し、ItemsControlはスクロールに対応していませんので、ScrollViewerの上にItemsControlを配…

byte[]をsbyte[]へ変換

C#

変換って言うかキャスト。byte配列型から直接sbyte配列型へキャストが出来ないので、一旦Array型を経由させてsbyte配列型へキャストする。 byte[] boo = new byte[100]; sbyte[] foo = ((boo as Array) as sbyte[]);

テスト用にダミーの人名を自動生成させる方法

C#

過去にテストで大量の人名が必要になりました。個人情報がとやかく言われるようになってきた時代で、本番DBから実データを利用するのはNGだったので、プログラム的に適当なそれっぽい名前を自動生成させて記憶があります。「第11回 テスト用の名前データを自…

ファイルダウンロードのURLをダミーで作る

C#

iPhoneアプリを作っていてもWindows Phoneアプリを作っていても、ダウンローダー的な実装を求められることが多々あります。あらかじめダウンロードするものが決まっている場合は良いのですが、大抵の場合対象となるファイル(とファイルサイズ)がバラバラです…

Windows PhoneでJavaScriptを使ってWebBrowserコントロールを制御する

WebBrowserコントロールは、Silverlightアプリケーション側からJavaScriptを実行することが出来ます。 前準備 XAMLの実装 WebBrowserコントロールを一つだけ設置しています。名前を「webBrowser」にしています。WebBrowserコントロールでJavaScriptを使用す…

Windows Phoneで分離ストレージ(Isolated Storage)を使ってデータの保存と取得を行う

本記事はWindows Phone Silverlightを使ったアプリケーション向けの開発Tipsです。WinRTアプリケーションでは使用することができない可能性があります。Windows Phone 7アプリケーションでは、以前の様なExprolerを使って自由に閲覧・削除等のファイル操作が…

ASP.NET MVC 2を使ってテスト用の簡易WebAPIを実装する

書ききれなかったので残りはあとで書く。うちのチームでは、Windows Mobile、iPhoneアプリの開発をやっています*1。スマートフォンアプリでは、殆どと言っても良いほどサーバーにアクセスして、なんらかの情報を取得したり保存したりしています。スマートフ…

.NET CF on Symbianを試みるもMS本社に潰された話

JAVAが携帯の標準になる前に、.NETコンパクト・フレームワークをSymbianの上に移植して携帯アプリケーション普及とサービスの拡充をWindows環境から支援すると起案、ドコモ(夏野さん)とアクセス(鎌田さん)と合意、MSR中国で移植終了するもMS本社に潰され…

Evernote APIをラップするC#のライブラリEvernoteSharp

Evernoteの容量が月30MBじゃ足りなくなってきたので、プレミアム会員になろうかと検討しています(併せてpixivのプレミアム会員を辞めようかと……)。でもランキング情報は保持しておきたいので、pivixのランキングデータをEvernoteに取り込めないかと考え中。…

C#で緯度経度の2点間の直線距離を求める

日本測地系から世界測地系(WGS84)に変換する方法については、「C#で位置情報を日本測地系から世界測地系(WGS84)に変換する」をごらんください。直線距離を求めるのはとても簡単なんですが計算結果にしっくり来ず調べてみたところ、どうやら地球が球であるこ…

C#で位置情報を日本測地系から世界測地系(WGS84)に変換する

緯度経度の2点間の直線距離を求める方法については、「C#で緯度経度の2点間の直線距離を求める - 酢ろぐ!」をごらんください。GPSの位置情報には日本独自の「日本測地系」と「世界測地系(WGS84)」があります。私の使っているデバイスは大抵海外メーカー製で…

C#でPDFの内容を読み込む

C#

証券会社とかでファンドについての資料がPDFで配布されているんだけど、配布されている量が結構あるので、PDFを読み込んで一覧化するバッチを作って楽をしてしまいたいなぁと思ってちょっと調べてみました。iTextSharpってライブラリが使い勝手が良いらしい…

.NET アプリケーションの基礎学習コンテンツ 300秒(5分)シリーズ

C#

Code Recipeヤバイ、まじヤバイ(吉野家AA略プログラミング初心者も、.NET Frameworkをこれから押さえ様としてる人も、開発経験者もみておいた方が良さそうな情報をMicrosoftが公開していました。.NET の概要から、Windowsアプリケーション開発、Webアプリケ…

@kagamiuta のブログを見てました / TwitterへのStatusの投稿

C#

①post出来ない ついったクライアントもどき作ってみた - かがぴーの雑記帳 POSTはStatusの投稿でいいのかな?コメントに入れようと思ったんだけどコードが長くなってしまったので、トラックバックにしてみますね。 public bool PostStatus(string userID, st…

ラムダ式に挑戦してみた

C#

ラムダ式は名前からして、難しそうなイメージがあって敬遠してました。 食わず嫌いは駄目ポと、(仕事が暇暇なので)思い至ったので、 delegateをろくに使ったこと無い僕が、ラムダ式に挑戦してみた。 まずは、delegateとラムダ式を使ったC#のコードを書いてみ…

C#を使って楽天証券のMarketSpeedへの自動ログイン機能を作る

C#

楽天証券が提供しているMarketSpeedへの自動ログイン機能をこしらえてみました。とりあえず動いているみたいなので公開ω(゚ω゚)ω カパーテキストボックスに文字列を入力させたかったんだけど、どうやって良いのかがよくわからなくて悩んじゃって、このコードを書…

C#を使って最小化した時にタスクトレイに格納する

C#

以下のサンプルコードは、フォームを最小化した時にタスクトレイに入れて、タスクトレイのアイコンをダブルクリックされるとフォームを表示する処理です。 private void Form1_FormClosing(object sender, FormClosingEventArgs e) { // トレイリストのアイ…

C#でNDdeを使って楽天RSSとDDE通信させて特定の銘柄の株価を取得する

楽天証券の口座開設のご案内が届きました。月曜日に必要な書類を送付して土曜日に開設とは、楽天証券さんは働き者だなぁ。マーケットスピード(及び楽天RSS)は、開設より3ヶ月間のみ無料で利用出来ます。以降は3ヶ月15,750円掛かってしまいますので、早速楽天…

BREWアプリ開発者が、.NET Frameworkで安定したアプリ間通信をするにはどうしたら良いのか考えてみた

C#

昨日、寝る前に自動売買アプリの全体像に関して考え直してみました。最初は、株価Getアプリとシグナル検出(買いか売りかを判断する)アプリは、DBだけを共有させてそれぞれの機能に特化させようかと思っていました。 DBに変更がある毎に通知を受けれれば良い…

C#を使ってマウスの動きをプログラミングする

C#

「マウスの右ボタンを押したままの状態で放置しておいて、1時間ごとに押し直すような事って出来ん?」って聞かれたので、「出来るんじゃね?」と適当に答えておきました。 それから1ヶ月……なんとなく思い出して本当に出来るのかどうか調べてみました。 http:…

C#を使ってVisual SourceSafeを操作しよう その2

C#を使ってVisual SourceSafeを操作しよう その1 のつづきです。C#からVSSを操作する手段は、ぱっと思いつく限りで3通りあります。 VSSをコマンドラインで呼び出し、別プロセスで動かす バッチファイルを作成して、コマンドプロンプトを別プロセスで動かす C…

C#を使ってVisual SourceSafeを操作しよう その1

今、ソースの管理にはVisual SourceSafe6.0(以下VSS)を使っています。Perlで作ったスクリプトを使って、毎日夜間にバッチでVSSから最新のソースを取得〜ビルド〜中間ファイルごとソースを圧縮をしています。フルビルドでざっと1時間半は掛かるので、かなり生…

C#で統合アーカイバのラッパーライブラリを使って無圧縮Tarファイルを簡単に作る

C#

Archiver Wrapper - Ancient libraryを使ってこんなコードを書いてみました。以前書いた無圧縮TarをC#で作ってみました。 String szTarCmd = "cf C:\\test.tar C:\\test.txt"; String szLogBuffer = ""; Tar tar = new Tar(); tar.Load(); try { tar.Execute…

C#でYaneSDKを使ってキーボード入力を受け付ける

C#

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace yanetest2 { public partial class Form1 : Form { public Form1() {…

C#でYaneSDKを使ってBMPで書いたキャラを表示させる

C#

色々と問題を抱えてるコードです。YaneSDKだけではなくC#への理解不足もありそうです。 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows…

C#でYaneSDKを使ってキャラクターを動かしてみる

C#

今日やった事を踏まえて、monaくんを動かしてみました。透過色の設定がよく判ってないのでRGB(255,0,255)の色が残ったままになってます(恥ずかしい)。 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; us…

YaneSDKでC#に初挑戦してみました

C#

http://shakenbu.org/yanagi/d/20060505.html#p01を参考に(というか丸コピーじゃん!)。とりあえず動くものは作れたんですけれど、べたべたのC言語で仕事をしてる僕には、C#ソースコードが眩しい(´;ω;`)ブワッ