タグ

ブックマーク / blog.fenrir-inc.com (12)

  • Xamarin を使って iOS, Android, Windows ストアアプリを効率的に開発する!

    こんにちは。共同開発部 開発担当の伊藤です。 いわゆる「アプリストア」のあるプラットフォームも iOS、AndroidMacWindows と、かなり数が増えてきました。 このような状況ですので、フェンリルにも「iOS と Android で同じアプリを開発したい」というご相談をよくいただきます。 しかし、iOS と Android のアプリを、それぞれで同じように作ると、コストも時間もそれに見合う程度にかかります。 「iOS も Android も、同じプログラムで動けば、もっと効率よくアプリを作っていけるのに」という要望に応えるため、様々なクロスプラットフォーム開発の技術が出てきました。 今回は、その中でも昨年末ごろから名前があがってきている Xamarin についてご紹介します。 Xamarinとは 簡単に言うと C# で iOS、AndroidMac のアプリを開発できるツー

    Xamarin を使って iOS, Android, Windows ストアアプリを効率的に開発する!
  • NSProxy を使って UIWebView のイベントハンドリングをフックする

    こんにちは。開発担当の福井です。 突然ですが、みなさん NSProxy をご存じでしょうか? NSProxy は Foundation の中で唯一 NSObject を継承しないクラスです(NSProxy のサブクラスを除く)。 また、その実装はほとんどありません。 今回はその NSProxy を使って view に対するメソッド呼び出しをフックしてみようというお話です。 NSProxy の使い方 名前からも推測できるように、NSProxy は Proxy パターンを実現するためのクラスです。 メッセージの呼び出しが動的に解決される Objective-C において Proxy オブジェクトを実現するのは実に簡単です。 NSProxy は、ただ自身に送られたメッセージを、そのまま別のオブジェクトに受け流すことで Proxy としての機能を実現します。 Proxy オブジェクトを作ってみる

    NSProxy を使って UIWebView のイベントハンドリングをフックする
    raimon49
    raimon49 2013/11/20
    NSProxyでproxyパターン。NSObjectを継承しない唯一のクラスであるため、initメソッドもsuperには存在しない。自分で実装が必要。
  • 【iOS】UIWebView Hacks 〜ブラウザ開発テクニック〜

    こんにちは。 Sleipnir Mobile for iPhone / iPad 開発担当の宮です。 調べてみると、Sleipnir Mobile の最初のコミットは 2010年9月6日で、もう3年近く開発しているようです。最初はこんな貧弱な API でブラウザなんて作れるわけ無いと思っていましたが、なんとかなるものですね。今では多くのユーザーさんに使っていただけるプロダクトになりました。 今回は、この3年間で、使ってきた UIWebView の技を紹介したいと思います。詳細な方法については書きませんが、UIWebView で何ができて何ができないのかはわかるかと思います。それぞれの詳細なやり方については機会があれば書いていきたいです。 目次 長くなりそうなので、目次を用意しました。 余裕があればアップデートするので、ブックマークでもしておいてください。 UIWebView の API

    【iOS】UIWebView Hacks 〜ブラウザ開発テクニック〜
    raimon49
    raimon49 2013/07/16
    JavaScriptとして評価させて頑張る系を含めた秘伝のタレ的なもの。すごくまとまってる。
  • 【iOS/Mac開発】超サクサクアプリへの必須ツール Instruments を使いこなそう

    こんにちは。iOS / Mac 開発担当の金内です。 使って幸せなアプリには、サクサクとした動きが欠かせませんね。自分たちで作っているアプリが「サクサク」でなく「もっさり」と言われてしまうと残念な気持ちになりますが、反面「よし。こうなったら超最適化して超サクサクなハイパフォーマンスアプリを目指す!」と誓いを立てるよい機会でもあります。 そんな誓いを立てたあなたにピッタリのツールが Xcode に付属している Instruments(インストゥルメンツ)です。フェンリルのウェブブラウザ Sleipnir for Mac や Sleipnir Mobile for iPhone / iPad の開発でも大活躍しています。 Instruments は、一般的にはプロファイラという種類のツールにあたります。プロファイラは、どのオブジェクトがどれくらいメモリを消費しているとか、どのメソッドにどれくら

    【iOS/Mac開発】超サクサクアプリへの必須ツール Instruments を使いこなそう
    raimon49
    raimon49 2013/04/22
    プロファイリング Core Dataも
  • UITableViewCell の accessoryView を使うと少し楽

    UITableViewCell の accessoryView というプロパティについてです。それほどマイナーなプロパティでもないので、実は当たり前なのかもしれませんが、最近便利さに気付いたので紹介します。 UITableViewCell には accessoryType というプロパティがあって、3種類のアクセサリが付けられます。 accessoryView は、これをカスタムな見た目にしたい時に使うぐらいのものだという認識でした。実際そうなのですが、よく考えたら UIView ならなんでも入れられるわけで、UISwitch だって入れられるんだなと。設定画面でスイッチがよく出てくるのですが、今まで contentView に addSubview していて、位置を合わせるのが面倒だと思っていました。でも accessoryView なら次のコードで終わりです。frame の origi

    UITableViewCell の accessoryView を使うと少し楽
    raimon49
    raimon49 2013/01/15
    CGRectZeroでaccessoryViewにセットしてしまう。
  • Jenkins がもっと便利になるおすすめプラグイン 8 つ

    こんにちは、開発担当の松です。 今回は、Jenkins にたくさんあるプラグインの中からおすすめのプラグインをいくつか紹介します。 ジョブ一覧にアイコンを追加できる: Custom Job Icon 今年8月にリリースされた比較的新しいプラグイン。名前の通りプロジェクトごとにアイコンを登録できて、それがプロジェクト一覧に表示されるようにできます。 利用するには、プラグインインストール後にアイコンを登録する必要があります。 「Jenkins の管理」→「システムの設定」ページに「Custom icons」セクションが追加されていますので、そこでファイルを追加しておきます。追加しても「Refresh icon list」をクリックしないと表示が更新されない点に注意。 なお、画像の拡大縮小あまりきれいに行われないので、アイコンのサイズは 24 x 24 にしておくのがよいみたいです。 アイコン

    Jenkins がもっと便利になるおすすめプラグイン 8 つ
  • ブラウザのセキュリティを高めるサンドボックスについて

    こんにちは。開発担当の森です。 今回は、Sleipnir 3 for Windows の webkit エンジンでも使用されているサンドボックスについてお話しします。 Web 上にあるデータは危険かもしれない Web の発展と共にブラウザで表示できるものは、どんどん複雑になってきています。 それに伴って、ブラウザのセキュリティを破る方法も多種多様になってきているのが現状です。 そもそも、(trident を除いて)ブラウザのエンジン部分のソースは公開されており、攻撃者は防御側に比べると比較的優位にあります。 さらに、開発にかけられるコストが有限である以上、セキュリティホールが全くない状態を維持することは現実的ではありません。 私たちは危険かもしれない状態のブラウザを使い続けないといけないのでしょうか? 破られても重要な部分にアクセスできなければ OK 「セキュリティを破る」を言い換えると

    ブラウザのセキュリティを高めるサンドボックスについて
  • 【本日正式リリース】スマートフォンユーザーのためのデスクトップブラウザ Sleipnir 3 for Windows / Mac (3.5) があなたのスマホライフを激変させる!

    みなさん、こんにちは。坪内です。 ついにこの日がやってまいりました。 Sleipnir 3 が新たな一歩を踏み出す日。そう、Sleipnir 3 for Windows / Mac (3.5) 正式版リリースの日です。 つい先ほど、全てのリリース作業を終え、もうすでにダウンロードできる状態になっています。 待ちきれない方には、すぐにお試しいただきたい。 でも、この Sleipnir 3 がどのくらい特別なプロダクトなのか、皆さんに知ってもらいたいから、少しだけお付き合いくださいね。 デスクトップブラウザなのにスマートフォンユーザー向けの Web ブラウザ Sleipnir 3 for Windows / Mac (3.5) から、「スマートフォンユーザーのためのデスクトップブラウザ」という、新コンセプトに変更しました。 スマートフォンユーザーが急増しています。 スマートフォン経由のインター

    【本日正式リリース】スマートフォンユーザーのためのデスクトップブラウザ Sleipnir 3 for Windows / Mac (3.5) があなたのスマホライフを激変させる!
    raimon49
    raimon49 2012/07/01
    レンダリングエンジンはデフォルトでWebKitに。Chrome拡張にも対応。
  • WebKit 版 Sleipnir で見られる最新のウェブ技術を利用したページ 8 つ

    こんにちは、Sleipnir 3 for Windows 開発担当の松です。 Sleipnir 3 for Windows WebKit α版は試してみたでしょうか。 α版ですので、未実装の機能や不具合は沢山ありますが、WebKit 版の可能性を体験いただけたかと思います。 さて、WebKit 搭載によって嬉しいのはウェブ関連の各種技術がサポートされていること。 そこで今回は、そのような技術を利用したデモなどを集めたChrome Experimentsというサイトからページ 8 つ紹介します。 なお、今回紹介するページは WebGL を利用しているため、閲覧するためにはビデオカードが OpenGL 2.0 をサポートしている必要がありますのでご注意を。 地形をブロックで表示する「Blocky Earth」 指定された場所をブロック状の 3D で表示します。ブロックの質感がいい感じです。例

    WebKit 版 Sleipnir で見られる最新のウェブ技術を利用したページ 8 つ
  • Fix it でブラウザーの動作を快適にしよう!

    こんにちは! フェンリル社内で Microsoft のライセンスに一番詳しい(かもしれない)RAPT こと山口です。 花粉症の季節到来で風邪なんだか花粉症なんだかよくわからない人が多くなってきた今日この頃、みなさまいかがお過ごしでしょうか。 私も例に違わず、花粉症でして、スギだけでなくヒノキやブタクサ、ハウスダストといったいろんなモノに反応する敏感な鼻に昇格して十数年。 毎日アレルギー用の薬を飲んで眠たいのをガマンしつつ仕事に励んでいます。 さて、今回はとってもステキで便利なのに知らない人が意外と多いんじゃないかと思われる Microsoft の Fix it について書こうと思います。 Fix it とは? みなさんは、Microsoft Fix it はご存知でしょうか。 Microsoft Fix it は、簡単な操作で Windows や Internet Explorer など

    Fix it でブラウザーの動作を快適にしよう!
    raimon49
    raimon49 2012/03/28
    自動修復 安定性向上
  • 分散バージョン管理システムのすすめ その1

    こんにちは、Sleipnir 開発担当の森です。 今回は、 分散バージョン管理システムの Mercurial の紹介をしたいと思います。 現在進行中の Sleipnir 3 の開発では Mercurial を使っており、非常に便利で、もはや無いと開発ができないと思うほど役立っています。 バージョン管理システムを使ってなかったり、”分散でない”システムを使っている人はぜひ導入を検討してみて欲しいです。 と言うわけで、分散バージョン管理システムについて、仕組みを簡単に解説します。 分散バージョン管理システムでは、まず作業用フォルダを決めその中にプロジェクトで使うファイルを入れる必要が有ります。 そして、作業が一段落するたびに “Commit” ( DB  に差分を送る。この DB を “Repository” と呼びます)コマンドで、差分を変更履歴として積み上げていきます。 Reposito

    分散バージョン管理システムのすすめ その1
    raimon49
    raimon49 2011/07/04
    日本語ファイル名はしょうがないね。
  •   は半角スペースではないというお話 (フェンリル | デベロッパーズブログ)

    いかがでしょう? WEBブラウザにもよりますが、結構実際の見た目も違うように思います。 で、冒頭の「半角スペースと  」の件ですが、ちゃんと意識しておかないと「あれ?」と思うことがあります。 「  を半角スペース (0x20) に置き換える」プログラムがあるように、「  を半角スペースに置き換えず、nbsp (0xC2A0) に置き換える」プログラムもありますから、WEB ブラウザのように 0xC2A0 を表示できる場合はいいですけど、表示できないプログラムだと困りますよね。 冒頭の画像は、わが愛するテキステエディタ Emacs だとこんな感じになります、というサンプルでした おまけとして、  を 0xC2A0 に置き換える例を。雰囲気をお楽しみください。 use HTML::Entities; use Encode; use Data::Dumpe

      は半角スペースではないというお話 (フェンリル | デベロッパーズブログ)
  • 1