江戸一番のジャスタウェイ職人のブログ

江戸一番のジャスタウェイ職人

Justaway for iOS βテスト申し込み

UDIDによるテスター登録上限の100デバイスにそろそろ到達してしまう為、テスター登録をTestFlight(上限1000人)に切り替えます。TestFlight によるテストには事前のメールアドレス登録が必要です、こちらにメールアドレスを記入下さい。Justaway for iOS β…

iOS標準Frameworkで作れるオーバーレイタイプの動画プレイヤーを付けました

Android の Vine Player が好きであのさり気ない感じの動画プレイヤーを Justaway for iOS に組み込みましたVine Playerの公開とVineの動画をAndroidで再生するお話 - おぼえにくいおぼえがきサムネイルをタップするとオーバーレイで動画再生ビューが開いて…

SwiftでTwitter Streaming APIをparseするのに便利なNSData分割読み込みライブラリ

Twitter Streaming APIはCRLF区切りでJSONを送ってくるのですが、これを都度Stringに変換しcomponentsSeparatedByStringで配列にし、最後の手前まではNSDataに戻してJSONに、最後の要素はバッファに詰めて次回処理で先頭にくっつける...というのがいかにもパ…

Bitriseで特定ブランチだけXcode 7 beta 5を使ってCI

Bitriseはとにかく新しいXcode及びXcode betaでCIできる画期的なサービスです。Travis CIやCicle CIもGM版が出ればXcode 7に対応してくれると思いますが、待ちきれない方も大勢居るかと思います。では早速Bitriseのアカウントを作りましょう、gihtubアカウン…

Nexus5ここに眠る

帰って来たNexus5は長年の酷使からかもうまともに戦える身体ではありませんでした、突然の再起動、不安定な通信、もうそっと休ませることにしました。いままでありがとう。

Nexus5おかえり

Nexus5が帰ってきました。この手に馴染む感じがやはり自分のメイン機という感じがあり、またNexus 5をメインに戻そうと思います。

Nexus5こわれる

急に再起動したかと思ったら「アプリの最適化」が行われ、「あれ?アップデートしたのかな?」と思って待っていたら、終了後の再起動直後にまたアプリの最適化(以下無限ループ)に陥り困り果てた。奇遇にもつい先日あんちぽさんがNexus6で同じ現象に陥って…

UIScrollViewが複数ある時でも楽にステータスバーへのタッチイベントを取得する

scrollViewShouldScrollToTopを使うのが常套らしいのだけれどUIScrollViewが複数ある場合、1つを除いてすべてのUIScrollViewやUITextView/UITableViewなどのscrollsToTopをfalseにするのも楽ではないので touchesBegan を使いました。 AppDelegate.swift ove…

iOSで任意のURLをブラウザ(Chrome)で開いた際に遷移元アプリに戻る導線を付ける

内蔵ブラウザを個別のアプリで作り込むのはあまり好きじゃなく、かといって外部ブラウザで開くと元のアプリに戻りづらいジレンマがあったが、Google Chromeは元のアプリ名とcallbackスキームが指定でき、これを指定すると画像のようにアプリケーション名でバ…

OpenID Connectに対応しました

7kai Taskstasks.7kai.org移行方法Google アカウントの認証を OpenID から OpenID Connect に移行する方法 - WebOS GoodiesGoogle Developer Consoleのプロジェクトの設定で、Google + APIを有効化しないとprofileにアクセス出来ないので注意が必要です。(…

テーブルが低くなった

写真じゃわかりにくいが20cmくらい低くなってソファに座ったまま食事をしたりニコニコ動画を観ることが出来るようになった。 Instagram

UIAppearanceのリアルタイム反映は容易ではない

テーマの切り替え機能を実装しようとUIAppearanceについて調べたが、UIAppearanceはUIコンポーネントの属性(色やフォント)の初期値を設定するもので、既に表示が終わったUIコンポーネントの属性を動的に変えてくれるものではなかった。それを踏まえ調べた…

2015

ただただ美しい物をつくり続ける、それだけ

Swiftで安心してKeychain使うライブラリKeyClip

前回 Swiftでいい感じにKeychain使う - 江戸一番のジャスタウェイ職人のブログ でスニペットを紹介しました。しかし現行のSwift1.1でKeychainを使うには罠があり、Optimization levelがFastestな状態でコンパイルすると値の読み込みが失敗しプロセスが落ちま…

デバッグビルド時だけ Permission Denial: starting Intent が発生するなぁと思ったら確認する事

デバッグビルドとリリースビルドを併用しようと applicationIdSuffix に .debug をつけた頃から設定画面からのアクティビティ呼び出しが失敗するようになった。 デバッグビルドとリリースビルドを併用する為に書いた記述 android { // ... buildTypes { debu…

Swiftでいい感じにNSNotificationCenter#addObserverForNameを使う

NSNotificationCenterの事は嫌いじゃないんだけどaddObserver:selector:name:object:とaddObserverForNameがどちらも一長一短でもどかしくラッパーを書きました。どういう一長一短かというと addObserverForName removeObserverが面倒臭い addする側でQueue…

Swiftでいい感じにKeychain使う

2014/11/30追記 このコードをプロジェクト内で使うだけではリリールビルド時(Swiftコンパイラの最適化オプションが有効な時)に動きません、KeyClipを使いましょう。 Swiftで安心してKeychain使うライブラリKeyClip - 江戸一番のジャスタウェイ職人のブログ…

YAPC::Asia 2014に参加してきました

3日間ビール漬けでこれぞYAPCという感じだった、いや昔はそんなにビールビールしてなかったけど懇談会のお祭り感は初回から変わらない気がする。 1日目の夜 YAPCの始まりとともに渡されたビールを飲みながらトークを聞いて終わったら下に降りてまたHubで飲ん…

自分宛てのDMで通知してくれる奴をHeroku Buttonに対応

以前書いた HTTP POSTで受けた内容を自分宛てのDMにするproxyがあると色々捗る をだれでも体験できるように Heroku Button 付けて上げました。https://github.com/s-aska/post-dm-proxy何か重いバッチ処理が終わった後やグループチャットで呼ばれた時や一平…

オートページャーの最小実装

オートページャー系のjQueryプラグインは沢山あるが実装が気に食わないのでいつも自作してる。とはいえ秘伝のソース状態ではよくないと思いいくつか機能を捨ててコンパクトにまとめた。 jQuery依存バージョン 特徴 if (loading) { return } の様な読み込み中…

同時進行しているブランチが多いとマージを間違いそうになる為シェルスクリプトに起こした

同時並行で進行しているブランチが多く危うくマージを間違いそうになる為シェルスクリプトに起こしてみた。git-flow など使うのも良いがとりあえずマージを安全かつ素早く行いたいだけならこの程度でも良い。使用イメージ # 今居る feature/profile ブランチ…

黒執事 Book of Circus 第1話「その執事、披露」

劇中に出るようなデザートを一度でいいから作ってみたいが生憎オーブンを置くスペースはないのだ。【ニコニコ動画】黒執事 Book of Circus 第1話「その執事、披露」

テーマ切り替え試作UIデモ

2タップでもだいぶサクサクだけどワンタップで次々とテーマ切り替えられるようにしたい。https://github.com/s-aska/Justaway-for-iOS/commit/1c8cd954406147f7e9495bf2cb981d08fc846bc0 Justaway for iOS Theme from Aska on Vimeo.

タイムラインの自動スクロールを自然な動きにする(UITableView)

UITableViewにはinsertRowsAtIndexPathsというセルをアニメーションさせながら追加できる便利なメソッドがあり、そのアニメーションオプション(withRowAnimation)を使っていたんですが、これはTwitterクライアントのタイムラインとしては一般的ではない動…

LimeChatのテーマを設定するとコピペが捗る

よくIRCなどのコピペで 16:20 aska: ダメ人間 16:20 aska: dameninngenn: ダメ人間!!!!!!!!!! 16:20 aska: shiya: ダメ人間!!!!!!!!!!!!!! 16:20 dameninngenn: はい 16:20 shiya: dameninngenn: ダメ人間!!!!!!!!!!!!…

mavenライブラリの最新バージョンチェックする奴

gradleのdependenciesのバージョンをメンテするのが面倒で簡易にチェックしようとrubyスクリプトを書いたgradleのタスクとして書けばちゃんとbuild.gradleとか見て動かせるんだけどgradle力が...それに敢えて新しいバージョンを適応していないケースやチェッ…

HTTP POSTで受けた内容を自分宛てのDMにするproxyがあると色々捗る

HTTP POSTで受けた内容を自分宛てのDMにするproxyがあると色々捗る curl -D 'msg=Watch IRC!!!' http://dm.example.com/とか curl -D 'msg=New apk release!!!' http://dm.example.com/とかwatchコマンドとかatコマンドとかzncのpluginとか生活の様々なシー…

Justaway for Android の並び替え機能の実装

ListViewをDrag and Dropで並び替えたかったので一から書いてみました。サンプルソース: Sortable ListView on Drag and Drop サクサク並び替えたいのでドラッグ開始はタッチ(指が画面に触れた瞬間)を起点にしている ListView自体のスクロールを考慮する必…

Justaway for iOS α版を試したい方へ

急ピッチで開発している Justaway for iOS ですが、oboenikui氏との約束もあり完成度はともかく希望者にはインストール出来る環境を用意しました。 試用方法 Androidと違い自由に配布できないので、まずは Deploygate でアカウントを作成し、アカウント名を …

特定のプロジェクトでIDEの挙動がおかしい時は git clean しよう

Android と iOS のアプリをそれぞれ Android Studio と Xcode で書いているのだけど、様々な要因でプロジェクトがぶっ壊れる。 IDE / SDK / Plugin をバージョンアップ 依存モジュールを増やして入れなおす ワークスペースのディレクトリ名変更 違う環境で書…