tag:blogger.com,1999:blog-63471328704939126562024-03-14T21:24:45.275+09:00Cocoaの日々iOS/iPhone/iPad/MacOSX プログラミング, Objective-C, Cocoaなどxcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.comBlogger409125tag:blogger.com,1999:blog-6347132870493912656.post-28548465702712585172018-04-08T23:18:00.002+09:002018-04-08T23:35:25.417+09:00iOS技術者がWordpressでアプリ公式ページを制作したらご無沙汰してます。
個人開発している todayeeというiOSアプリの公式ページを公開しました。
https://todayee.jp/
モバイルファーストにしたので PCで見るとメニューが煩かったり、中身がスカスカなのはご愛嬌。以前にもアプリのサイトを HTMLで作ったことがありますが、WordPressで制作したのは初めて。
そこで今回 WordPressによるサイト作りで使用したテーマや、素材、AWSで組み立てたインフラなどの情報を共有して行こうと思います。
Wordpress
素材(写真とアイコン)
インフラ(AWS)
期間と費用
個人開発者などでこれからランディングページなどを作る人の参考になれば。
WordPress
何はなくともテーマ
非デザイナが WordPressでホームページを作る際に一番重要だと思うのはテーマの選定。私xcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-45189234743058466382017-04-26T23:30:00.003+09:002017-04-26T23:41:22.682+09:00【アプリ】todayee pics 1.1リリース
todayee pics を大幅にバージョンアップした。
AppStore
・Adobe Creative Cloud による高機能フォトレタッチ搭載
・写真1枚毎にコメント入力
・オリジナルサイズ対応
・スクウェア加工
そのほかかなり手を入れて使い勝手を改善している。
(参考)【アプリ】Todayee Pisc 1.0 をリリースしました
Adobe Creative SDK のフォトレタッチ
Adobe社が提供している Adobe Creattive SDK のフォトレタッチライブラリを組み込んだ。このライブラリは高機能な上に使い勝手も優れていてなかなか良い。フィルタも豊富で触っていると結構楽しい。
フィルタ(抜粋)
手描き
フィルタやステッカーなどは Adobe社のサービスからダウンロードして追加することもできる。みたxcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-49095305254288497302017-01-05T08:32:00.003+09:002017-01-05T08:32:36.470+09:00【アプリ】Todayee Video 1.0 をリリースしました
昨年末に Todayee シリーズ第9弾「Todayee Voice」をリリースしました。ビデオを撮影してエバーノートへテキストを投稿できるアプリです。
起動後すぐに撮影を開始できます。
撮影後はプレビューが見られます。ワンタップで即送信。
あとはバックグラウンドでエバーノートへ送信されます。
撮影したビデオにコメント(1行テキスト)を付けることができます。
さらにエバーノートへ投稿した動画には自動的にサムネイル画像が付きます。
送信前にプレビュー画面でスワイプすると
サムネイルにしたい場面を選ぶこともできます。
ビデオ画質
ビデオ画質は iPhone / iPad の機種ごとの主なものに対応しています。以下は iPhone6sの例です。
640 x 480 (30fps)
960 x 540 (xcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-68649039222991344502016-11-07T08:29:00.004+09:002017-01-05T07:41:21.244+09:00【アプリ】Todayee Voice 1.0 をリリースしました
Todayee シリーズ第8弾「Todayee Voice」をリリースしました。音声認識を使ってエバーノートへテキストを投稿できるアプリです。
まずは動画デモをどうぞ。
上記動画の音量が小さめですが実際に話しかけた内容が変換されていって最後に音声コマンドで送信されている様子がわかると思います。
アプリの起動直後からすぐに音声認識が開始されます。
中央の円は1分間のカウントダウンタイマーになっています
(音声認識の上限が1分なため)。
話しかけると音声が次々にテキストに変換されて行きます。
(青い文字が認識途中で、黒文字は確定済)
テキストへの変換が終わったら送信ボタンを押すだけです。
後述する音声コマンドを使うとボタンを押さずに送信することもできます。
音声認識
iOS10 から提供されたxcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-26561319070109330962016-11-07T08:29:00.002+09:002017-01-05T07:35:46.453+09:00【アプリ】Todayee Voice 1.0 をリリースしました
Todayee シリーズ第8弾「Todayee Voice」をリリースしました。音声認識を使ってエバーノートへテキストを投稿できるアプリです。
まずは動画デモをどうぞ。
音量が小さめですが実際に話しかけた内容が変換されていって最後に音声コマンドで送信されている様子がわかると思います。
アプリの起動直後からすぐに音声認識が開始されます。
中央の円は1分間のカウントダウンタイマーになっています
(音声認識の上限が1分なため)。
話しかけると音声が次々にテキストに変換されて行きます。
(青い文字が認識途中で、黒文字は確定済)
テキストへの変換が終わったら送信ボタンを押すだけです。
後述する音声コマンドを使うとボタンを押さずに送信することもできます。
音声認識
iOS10 から提供された音声認識の xcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-52105842670847029262016-10-11T22:40:00.004+09:002016-11-05T19:13:39.289+09:00【アプリ】Todayee Rec 1.0 をリリースしました
Todayee シリーズ第7弾「Todayee Rec」をリリースしました。音声を録音してエバーノートへ投稿できるアプリです。
11〜44kHz、モノラル/ステレオ、最大15分まで録音して送付が可能です。
再生もできます。
録音した音声はテキストを付けてエバーノートへ投稿できます。
エバーノートでの見え方はこんな感じ(PC版エバーノート)。
上から入力したテキスト、音声データ、下の薄い文字は録音時刻・時間とサンプリング周波数にチャンネル数。
設定画面はこう。
Todayeeの特徴である複数アプリ・デバイスからの投稿を1つのノートへまとめる機能も、もちろん健在です。
Todayee は複数のアプリ、複数のデバイスからの投稿をすべて1つのノートにまとめることができます。例えば下の図は Place と xcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-59461689846774408002016-09-27T08:21:00.002+09:002016-09-27T08:21:43.905+09:00【アプリ】Todayee Pisc 1.0 をリリースしました
Todayee シリーズ第6弾「Todayee Pics」をリリースしました。カメラロール内の写真をエバーノートへ投稿できるアプリです。
【リリース記念】期間限定無料ダウンロード提供中です(2016/09/27時点)。
最大100枚までの写真をアップロードすることができます。
デフォルトでは当日のノートにすべての写真が追記されるようになっています。
ビューアモードで写真をめくって選択することもできます。
1日分の写真は日付右のボタンでワンタッチ選択できます。
一度投稿した写真は薄めに表示されます。
エバーノートでの見え方はこのようになります。
Todayeeの引用形式で写真の日時と場所が入ります。
(日時の形式は設定画面でカスタマイズできます)
投稿には2つのモードがあって切り替えることができxcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-43364244467829440072016-08-26T08:09:00.001+09:002016-08-26T08:10:01.740+09:00【アプリ】Todayee Place 1.0 をリリースしました(無料)Todayee シリーズ第5弾「Todayee Place」をリリースしました。無料です。
iOS標準のマップを利用したアプリで、表示しているマップ画像をそのままエバーノートへ投稿することができます。
この状態で投稿するとこうなります。
3Dにも対応していてこんな投稿もできます。
場所の検索にも対応。
検索結果を投稿すると住所や、サイトがあればそのURLが引用形式で投稿されます。
Todayeeの特徴である複数アプリ・デバイスからの投稿を1つのノートへまとめる機能も、もちろん健在です。
他の Todayeeシリーズのアプリと一緒に使っていけます。下は Place と Photo からの投稿が1つのノートにまとまっている例です。
他の Todayeeアプリの記事
【アプリ】Todayee Text / Photo 1.0 をリリースしました
【アプリ】xcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com1tag:blogger.com,1999:blog-6347132870493912656.post-70415516015797382722016-07-29T08:28:00.001+09:002016-07-29T08:28:10.833+09:00【アプリ】Todayee Silent 1.0.1 バージョンアップTodayeeシリーズのカメラアプリ Todayee silent をアップデートしました。
変更の大きな点は、非マナーモードでシャッター音が鳴るところ。最初のバージョンでは完全無音で審査が通ったが2回目ではダメだった(PLA 3.3.8 というやつに引っかかった。これは被写体に撮影していることを知らせる条項)。単純にシャッター音を復活させるとこのアプリの存在意義が無くなってしまうため、少し悩んだあげく非マナーモードのみ 単純に AVAudioPlayerでシャッター音の .aif ファイルを再生するようにしてみた。その結果、無事に通過。実際にはもう一点指摘があって、スクリーンショットに入れていたテキストの「無音」を消すようにとの指導もあった。そこは別のテキストで置き換えた。そんなこんなで、ここ数日で3回ほど申請と却下を繰り返したあげくようやく今朝リリースできた。
ということxcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-61190736155541519082016-07-28T05:48:00.002+09:002016-07-28T06:00:28.855+09:00【アプリ】Todayee Extension 1.0 をリリースしました(無料)
Todayee シリーズ第4弾「Todayee Extension」をリリースしました。無料です。
iOSのシェア機能を利用してEvernoteへ投稿を行うアプリです。他のアプリで↑ボタンを押すと Todayeeアイコンが出てきます。
これをタップするとダイアログが表示され投稿することができます。
シェアボタン利用が中心なのでアプリ自体は設定画面のみ。
テキスト・URL・画像(1枚)が投稿可能です。カメラロールの写真はもちろん、SafariやRSSリーダー、メッセージなどで気になる情報があった時のURLの簡易クリップアプリとしても使えます。
投稿したテキストは左に線が表示される引用スタイルとなります。またURLは「リンク」という文字のリンクとなります。
以下、投稿例です。
Todayeeの特徴である複数アプリ・xcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com1tag:blogger.com,1999:blog-6347132870493912656.post-44834256233826583042016-07-22T06:34:00.002+09:002016-07-22T06:34:56.335+09:00 【アプリ】Todayee Silent 1.0 をリリースしました
Todayee シリーズ第3弾「Todayee Silent」をリリースしました。
写真を撮影して送信するだけのシンプルなアプリです。特徴はシャッター音がしないこと。
防犯上の理由からカメラを上にした状態(iPhoneの液晶面を下にした状態)では撮影ができないようになっています。またiPhoneの場合、撮影時にバイブレーションが動作します(これは停められません)。
Todayeeの特徴である複数アプリ・デバイスからの投稿を1つのノートへまとめる機能も健在です。他の Text と Photo と一緒に使っていけます。
画質は同シリーズの Photoと比べると劣ります(例 iPhone6の場合、最大 750 x 1000)。このあたりは用途に合わせて Photoと使い分けてもらえればと思っています。
開発メモ
無音カメラの実装はビデオキャプチャの原理で、これxcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-47429109175735426372016-07-12T06:31:00.001+09:002016-07-12T06:31:49.571+09:00液晶面が上を向いているか地面を向いているかの判定に CoreMotionの gravityがよさげmotionManager.deviceMotionUpdateInterval = 0.2
motionManager.startDeviceMotionUpdatesToQueue(NSOperationQueue.mainQueue()) { (motion, error) in
if motion?.gravity.z < 0.75 {
print("up side")
} else {
print("down side)
}
}
gravity.z の値は、液晶面が上(天)を向いている時は -1.0近辺
Optional(-0.99992328882217407)
Optional(xcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-87052749418727723022016-06-21T07:00:00.000+09:002016-06-21T12:20:01.297+09:00【アプリ】Todayee Text / Photo 1.0 をリリースしました
新アプリ2本 Todayee Text / Photo をリリースしました。読み方は「トゥデイー」。どちらもエバーノート投稿専用アプリです。名前の通り2つのアプリは関係があって Todayee プラットフォームという共通の仕組みで動作しています。このプラットフォームで動作するアプリで投稿した内容はすべて同じ1つのノートにマージすることができます。他の iPhoneやiPadからの投稿であっても同じノートにマージされます。※同一のエバーノートアカウントを使っていることが前提。
ノートは1日単位で自動的に切り替わるので、1日の複数のアプリ、複数のデバイスの複数の投稿がすべて1日のノートにまとめられることになります。
エバーノートで見るとこんな感じ。PhotoとText 両方からの投稿が1つのノートにまとまっている。
上の例に記載のある花子や太郎はxcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com2tag:blogger.com,1999:blog-6347132870493912656.post-68370144785503863172016-04-14T22:50:00.002+09:002016-04-14T22:54:39.773+09:00【番外】AWS Lambda / API Gateway / DynamoDB を使ったサーバレスなネットワークロック機構あいも変わらず Evernote 用の iOSアプリを作っているのだが、複数端末からの更新競合を防ぐ為にロックが欲しくなった。Evernote の APIには欲しい機能が見つからず、苦肉の作としてネットワーク越しにロックを管理する仕組みを試してみた。今回 iOSの話ではないが番外編として記録を残す。
ネットワークロックサービス
便宜上勝手に名付けた。排他制御を持たないリソースへのアクセス競合を防ぐため、ネットワーク上にロックサービスを用意する。既存のリソースを更新する場合、最初にネットワークロックの取得を試みて、その後読み出し→更新→ロック解放と処理を行う。ロック取得に失敗した場合は後でリトライする。もしロック取得したプログラムが落ちてしまう場合は解放されないロックが残ってしまう。この問題を最小限にする目的でロックにタイムアウトの機能を持たせる。時間が経過したロックは無視して、再xcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-47530306262684041312015-12-23T09:14:00.000+09:002015-12-23T09:54:20.331+09:00【アプリ】IconTimer 1.0 をリリースしました
新アプリ IconTimer をリリースしました。決めた時間をカウントダウンしてアラームを鳴らすだけのシンプルなタイマーアプリです。見た目にも音にもこだわりました。
特徴的なのは時間の選び方。
タップしたボタンの数字を足した合計が計測時間(分)になります。
以下は紹介動画。
時間・アイコン・色を自由にカスタマイズ。
以下は開発メモをつらつらと書きます。
ユーザインターフェイスめも
既存のタイマーアプリを使っていて毎回不満に感じていたのは、時間を選ぶ時に頭の中で「ひっかかり」があるところ。うまく説明できないのだけれど、あえて言えば時間を選ぶ時に注意を払わせるのが苦痛だった(どんだけものぐさと言われそうですが。。)
アプリを使うのがちっとも楽しくない。
例えば電卓式の時間を直接入力するタイプの場合、目的の数字を押してスタートするだけ..xcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-45712290822151342882015-11-17T22:21:00.000+09:002015-11-17T22:21:27.459+09:00Asset Catalog にサウンドファイルをおくAsset Catalogには画像以外のデータも置ける。サウンドファイル(.aif)を置いてみた。
取り出すには NSDataAsset を使う。let sound = NSDataAsset(name: name)
// use sound.data
取り出したサウンドファイルを鳴らす。
import UIKit
import AVFoundation
class Sound: NSObject {
static var player:AVAudioPlayer?
static func play(name:String) {
if let sound = NSDataAsset(name: name) {
do {
try! AVAudioSession.sharedInstance().xcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-89309713425322204482015-06-12T06:14:00.000+09:002015-06-12T06:14:00.903+09:00[Autolayout] サンプルケース - 親ビューの下半分に子ビューを配置 (2) アニメーション前回のやつにアニメーションを加えてみる。子ビューが下からシュッと出てくるやつ。
これは制約を使えば簡単。子ビューの上のラインを画面下端から、最終位置(この場合親ビューのCenterY)まで引き上げてやれば良い。
まず子ビューの初期位置を最終下端で作る。
let v1c = NSLayoutConstraint(item: tableView, attribute: .Top, relatedBy: .Equal,
toItem: parentView, attribute: .CenterY, multiplier: 1.0, constant: parentView.frame.size.height)
一旦 parentView.layoutIfNeeded()で初期描画させた後、アニメーションのコードを走らせる。
v1c.constant = 0.0
xcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-9599862373627649052015-06-11T07:52:00.000+09:002015-06-11T07:52:27.363+09:00[Autolayout] サンプルケース - 親ビューの下半分に子ビューを配置メニュー作成中。Autolayoutでこんな感じのビュー配置をしたい。
ランドスケープで。
親ビューが parentView、子ビューが tableViewとするとこんな感じ。
parentView.addSubview(tableView)
tableView.setTranslatesAutoresizingMaskIntoConstraints(false)
let h1c = NSLayoutConstraint(item: tableView, attribute: .Left, relatedBy: .Equal, toItem: parentView, attribute: .Left, multiplier: 1.0, constant: 0.0)
xcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-26900578334143842742015-06-01T08:26:00.000+09:002015-06-01T08:26:26.186+09:00[CocoaPods] use_frameworks! で作ったライブラリのバンドルCocoaPodsで自作ライブラリを作っているケースで、swift対応のためにフレームワーク化(use_framework!)するとバンドルはその中に入ってしまう。
Example.app
├── LKPostingQueueManager.framework
│ ├── Info.plist
│ ├── LKPostingQueueManager
│ └── Resources.bundle ←ここにくる(以前はもっと上の階層)
プログラムでこれを参照するにはメインバンドル配下では見つからない。
let path = NSBundle.mainBundle().pathForResource("Resource", ofType: "bundle")! → ここで nilでクラッシュ
let xcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-51148245371089303962015-05-15T12:32:00.005+09:002015-05-15T12:32:50.816+09:00【アプリ】StackOne 1.6.3 アイコンが変わりましたStackOneの最新バージョン 1.6.3をリリースしました。このバージョンからアイコンが変わっています。
象がいなくなり重なりの模様だけのシンプルなものに変えました。
これは某マネー系アプリからクレームがあったためです(英語)。確かにそれとは似ていて先方からは、自分たちが先に出したしメジャーだからそっちを変えてほしい、みたいな文面が来た。あと法的な対処も匂わせたりもしていました。これが1番目の理由です。
2番目の理由は、その件とは無関係に最近の私のエバーノート系アプリはどれも象が入っていないものになっているので、それに合わせたというのもあります。以前から漠然と変えようと思ってたところにクレームが来たのがきっかけになったとも言えます。
アイコンは別のデザインも色々と考えたのですが、しっくりくるものがなかなかできず。最終的には以前の重なりの部分だけを残すシンプルなものにxcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com2tag:blogger.com,1999:blog-6347132870493912656.post-2013849805578290182015-05-06T09:20:00.000+09:002015-05-13T12:42:05.744+09:00【アプリ】PicsEver 1.0 をリリースしました
新アプリ PicsEver をリリースしました。カメラロールの写真を選択してエバーノートに投稿するアプリです。最大100枚までの写真をまとめて投稿できるのが一番の特徴です。
選択した写真は1つのノートにまとめられて投稿されます。
写真1枚ごとに日付と場所情報のヘッダがつきます(位置情報のある写真のみ)。
ノートタイトルは標準で日付が入りますが設定でカスタマイズ可能。送信時に変更することもできます。
簡易ビューア
設定画面
iPadでも使えます
写真をまとめて投稿する手段がなくて困っていた方、是非ご利用下さい。
xcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-70437767976988314752015-04-11T12:12:00.001+09:002015-04-11T12:13:03.671+09:00【アプリ】PicsPicker 1.0 をリリースしました
新アプリ PicsPicker をリリースしました。カメラロールの写真や動画を選択して他のアプリに渡すという単純なアプリです。
1日ごとにグルーピングしてまとめて選択することができます。
ビューアもついてます(動画の再生も可)
指定サイズに縮小できる。
初の Swiftを使ったアプリで四苦八苦しました。でも実際 Swiftで書いたのは100行ぐらいで写真選択の部分は昨年 Objective-Cでガリガリ書いた自作ライブラリがメイン。Swiftの使い始めとしてはちょうどよかったかも。
このライブラリは githubで公開している。
lakesoft/LKImagePickerController
このライブラリを使うとこのアプリの写真選択機能と同じものが簡単にできる。
Swiftは面白い。が、Objective-Cのゆるゆるさに比べるとチェックが厳しいので慣れるまでxcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-89168319218178059822015-01-28T06:58:00.001+09:002015-01-28T07:03:09.486+09:00【アプリ】EverGear 3.0 メジャーアップデートしました
本日 EverGear 3.0 がリリースされました。数年ぶりのメジャーバージョンアップになります。基本機能はあまり変わっていませんがデザインとアイコンをすべて一新しました。さらに iPhone6 / iPhone6Plusに対応、そして iPadでも利用できるようになりました。
新しくなった EverGearを紹介します。
(参考)ランディングページ
特徴EverGearは エバーノートへの投稿に特化したアプリです。このアプリの一番の特徴は投稿前の下書き機能が充実しているところです。
下書きの一覧
下書きは通常のテキストはもちろん、
写真を添付することができてちょっとしたメモも書けます。
カメラ撮影はもちろんのこと、アルバムから複数の写真を取り込むことができます。
クリップボードからは画像やテキストが取り込めます。
写真とクリップボードは画面全体が上へスライドした後にxcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-70945485762962292802015-01-07T08:24:00.001+09:002015-01-07T08:24:56.563+09:00[Autolayout] アニメーション中に一時的に高さ0になると怒られる場合アニメーションなどで一時的に高さ0にすると下記のように怒られる。これは制約で高さ指定をしているから。
2015-01-07 08:14:06.763 EverGear[474:96170] Unable to simultaneously satisfy constraints.
Probably at least one of the constraints in the following list is one you don't want. Try this: (1) look at each constraint and try to figure out which you don't expect; (2) find the code that added the unwanted constraint or constraints and fix it. (Note: xcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0tag:blogger.com,1999:blog-6347132870493912656.post-83633693742523939222015-01-02T08:04:00.001+09:002015-01-02T08:07:41.378+09:00あけましておめでとうございます 2015昨年は2本の新作をリリースすることができました(目標10本だったけど)。
今年は新作目標を3本として色々と作っていきたいと考えています。あと前から考えていたWebサービスも1本作りたいと思ってます。
1月はEverGearの新バージョン3を出す予定です。お楽しみに。
2015年もよろしくお願いします。
xcatsanhttp://www.blogger.com/profile/07611922019852427552noreply@blogger.com0