Developer's Blog

開発その他 アーカイブ

iOS アプリのバイナリを少しのぞいてみる

Mac / iOS 開発担当の松本です。

皆さんご存知のように iOS アプリを作るのに欠かせない Objective-C は、メソッドの解決が動的なこともあり、C言語のファミリーでありながら強力なリフレクション機能を備えています。そのリフレクションの必要性等から、実行ファイルには様々な情報が埋め込まれていて、何気なくバイナリエディタで開いただけで、テンションが上がるバイナリに仕上がっています。のぞかずにはいられませんね。という訳で今日はこのバイナリを少しのぞいてみたいと思います。

まずはバイナリの概要を抑えておきましょう。iOS 上の実行ファイルは Mach-O という形式で(まーく・おーと読むらしい)、これは Windows や Linux でいうところの EXE や ELF にあたります。この Mach-O のフォーマットについては
アップルからドキュメントが提供されていますね。

細かい話はドキュメントをみて頂くとして、Mach-O オブジェクトは大きくは3つの部分に分けられます。

  • ヘッダ
  • ロードコマンド
  • データ

このうちロードコマンドの中のテキストセグメント内に、クラス名一覧やらメソッド名一覧やらが含まれています。なのでとりあえず読みたいのはロードコマンド周辺だという事です。

続きを読む

フェンリルのプロダクトは、こうやって案内してるんですよ

こんにちは、広報担当の片桐です。

広報 by wikipedia

『広報とは、広告と違って第三者(メディア等)を経由して情報発信する方法で、
広告と違って情報を取り上げてもらえるかどうかはメディア側が判断するもの。』

というような説明をよく見かけます。
確かに、実際にはニュース性の有無やその内容が旬な情報で有るかどうかなどが、重要になってきます。

今日は、私が行っている広報業務の一部をご紹介したいと思います。

 

続きを読む

【Windows Phone】 DeviceID の取得

こんにちは、開発の久郷です。

今回は、Windows Phone 開発の小ネタをひとつ。
個体識別をしたいこともあり、少々調べてみました。デスクトップ OS は、同一端末に複数の OS が入ったりヴァーチャルマシンがあったり、増設できたり外せたりと中々に統一的な識別が難しいですが、 iOS をはじめとするには携帯端末は(大雑把な意味での)拡張は限定的なため、iOS の UDID のような比較的はっきりとした個体識別方法があったりします。 Windows Phone では、Windows Live ID ありきな運用となるため(*注 先日開発者向け公開となった Windows 8 も)、ユーザの判別という点でも企業内利用という点でも、このあたりが色々と便利そうです。

続きを読む

[Android] Proguard による難読化に潜む罠とその回避方法

http://proguard.sourceforge.net/

こんにちは、Sleipnir Mobile for Android 開発担当の西田です。

Sleipnir Mobile for Android の開発を始めて数ヶ月、様々な罠にハマってきました。

今日はその中から、Proguard でハマった事例を紹介します。

 

続きを読む

【続】フェンリル大阪オフィス周辺のおすすめランチスポット

こんにちは、プロダクト担当の mayumi 改め、きたおです。

すっかり秋めいてきましたね。秋と言えば、スポーツの秋、読書の秋、そして、食欲の秋!今回はデベロッパーズブログなのに、開発とは関係ない食欲の秋にピッタリの内容をお届けします。

前回、開発の西田がオフィス周辺のランチスポットを紹介していましたが、「2軒かよ!」「しかも両方卵料理かよ!」と突っ込みどころ満載でしたので、企画を乗っ取ってやります。今回は、ランチによく行く8軒と、リッチなご褒美ランチ2軒をご紹介します!

堂島や北新地など、夜に行くにはちょっぴりドキドキなエリアも、ランチだととってもリーズナブルに楽しめます。

この記事に掲載している料理写真は前回、デザイナーの福島がブログで紹介していた AU の IS12T で撮影をしました。早く食べたい気持ちで何の設定もせずに撮ったので、せっかくの1320万画素数も生かされませんでした…撮影者の腕も大事ってことですね。

では、早速1軒目のお店から!

続きを読む

android 開発におけるリソース管理 〜ディレクトリ名の規則について〜

はじめまして。共同開発部で開発者をしています森河内です。
私自身、今までは iOS を中心に開発を行ってきたのですが、まだまだ手伝い程度ですが最近 Android アプリの開発も始めました。まだまだ、わからない事も多いのですが、折角 Android 開発を始めたので、 Android ネタでこのブログを書いてみたいと思います。

Android には iOS とは違い様々な端末が存在します。また、Android 端末は世界中で使われていますので、Android 開発を行っていると多言語対応もしたいことが多いと思います。Android では以下の画像のように解像度の違う端末や多言語に対応するにはリソースディレクトリ内の drawable ディレクトリや layout ディレクトリ名の後に修飾子をつける事で対応する事が出来ます。修飾子の付け方は、各ディレクトリ名の後に「 – ( ハイフン ) 」をつけてその後に値を入れると実現できます。全てをあげるときりがないので代表的なものを紹介したいと思います。

続きを読む

大容量 HDD 導入時には注意!「2TBの壁」

こんにちは。サーバ担当の家野(ヤノ)です。

最近は HDD も大容量化や低価格化が進み、TB(テラバイト)単位の HDD も珍しくなくなってきました。

しかしながら大容量の HDD を組み込む時には若干注意が必要です。
これまでも HDD が大容量化する度に「容量の壁」が存在したのですが、昨今でも OS によっては通称「2TB の壁」という容量の壁が存在するためです。

今日はこの 2TB の壁についてご紹介したいと思います。

続きを読む

個人開発者が自分のプロダクトを世の中に広めるためにはどうすればいいか。



個人開発者が自分のプロダクトを世の中に広めるにはどうすればよいか。

こんにちは。坪内です。

フェンリルでは、代表の柏木が個人でやっていた時代から今に至るまで、いろいろ試行錯誤しながら、こつこつと作り上げてきた「定石」に基づいて、プロダクトの開発、プロモーションを行っています。

私自身、広告会社にいたこともあり、入社した当初は、ユーザー個人個人とのコミュニケーションがこれほどまでに数字に影響するのか、と驚くこともしばしば。
物づくりの奥深さを感じる日々の連続でした。

自分のプロダクトや Web サービスを広めるにはどうすればいいか、悩んでいる人も多いことでしょう。

世の中にあるサービスよりいいものを作ったからといって、ユーザーが増えるとは限りません。また、多くのユーザーに知ってもらえたからといって、サービスが安泰になるわけでもありません。

本日は、フェンリルの定石を個人開発者の視点でいくつか紹介させていただくことで、悩める個人開発者への一筋の光になればと思っています。

なお、文中では、対象をプロダクトや Web サービスとしていますが、自分の Web サイトやブログを広めたいと思っている人にも少なからず参考になると思いますので、どうか自分は無関係と思わず、最後までお付き合いいただけると幸いです。

 ※定石とは:物事をするときの、最上とされる方法・手順。by コトバンク

続きを読む

分散バージョン管理システムのすすめ その3


こんにちは、Sleipnir 3 for Windows 開発担当の森本です。

今回は、具体的に Mercurial を使用する方法を解説していきます。

続きを読む

リポジトリから欲しい情報をさっと取り出せるように TortoiseHG のリビジョン検索機能を使ってみる

こんにちは、Sleipnir 開発担当の松本です。

今回は、TortoiseHG のリビジョン検索の機能を説明します。これは適当に使ってもそれなりに便利になりますが、きちんと使えば欲しいリビジョンを思い通りに絞り込めるようになります。

続きを読む

【Android デザイン】NINE Patch 画像で表現の幅を広げる

デザイナーの大西です。

Android ユーザーの皆さん、Sleipnir Mobile for Android はお使いいただけていますか?まだの方はぜひお試しくださいね。

Sleipnir Mobile – ウェブブラウザ – Android マーケット

 

本題ですが、Android 端末は様々な解像度があるので、ボタンなどが拡大されても汚くならないよう、画像素材を引き伸ばし可能な形にする必要があります。

Android OS 用に画像の引き伸ばしを指定したものが NINE Patch 画像です。

NINE Patch 画像の基本的な構造と作り方、応用編を紹介します。

続きを読む

機能は UX だけで決まらない、という話

こんにちは、開発の久郷です。

そろそろお盆ですが、みなさん休みの間のバカンスなど準備は万端でしょうか。 今年の夏は、ジメジメともせず暑さも厳しすぎるというほどでもなく、気持ちのいい夏のように 感じます。

さて、本題です。 IT 界隈でUX(ユーザーエクスペリエンス)が持て囃されてしばらく 経ちますが、UX とはなんなのでしょうか?

エンド・ユーザーが使った際に経験する 「楽しさ・心地よさといったプラスの感情」を価値として提供することを重視するコンセプト

最近では、よりわかりやすく「気持ちいい」とか表現されたりしていますね。 UX = UI デザインというイメージが強くなっています。

続きを読む

フェンリル大阪オフィス周辺のおすすめランチスポット

こんにちは、Sleipnir for Windows/Android 開発担当の西田です。

ソフトウェア開発にとって技術的なことはとても大事です。ですがもっと大事なことがあります。それは「食」です。食べなければ死んでしまいますからね。

というわけで今日はフェンリル大阪オフィスのある西梅田周辺のランチ事情についてです。

大阪オフィスは北新地・堂島というグルメ地区に接しており、様々なジャンルのお店がピンからキリまでひしめき合っています。夜はお高いお店もランチは割安で頂けたりするので、とにかくお店の選択肢は多くて、毎日違うお店でランチできるんじゃないかっていう勢いです。

そこで今回は、私が特に気に入っているリピート率の高いお店を2つ紹介します!

続きを読む

【節電】PC を掃除してハードウエア的に節電しよう

こんにちは。新しい PC を見るとまずは解体してみたくなる、ハードウエア好きのサーバ担当の家野(ヤノ)です。

8月に入りまさに夏本番!という感じですが皆様いかがお過ごしでしょうか?
今年のバズワードは「節電」ということで、家電を始め節電対策の話題が豊富ですね。

Windows PC 関連も、節電対策として Microsoft 社がまとめているWindows PC 節電策などの情報ページもあります。

PC のこういった「節電」も大事ですが、意外と見落としがちなのが PC 本体内部のエアフロー(空気の流れ)。
ソフトウエア的に「節電」に取り組んでいても、エアフローが悪くファンが唸りを上げて全開、というのでは余計な電力を食ってしまいます。

そんなわけで、今回は「PC を掃除してハードウエア的に節電しよう」ということで
内部清掃によるエアフローの改善を中心にいくつかのステップに分けて節電のための熱対策についてご紹介したいと思います。

続きを読む

分散バージョン管理システムのすすめ その2

 

こんにちは、Sleipnir 開発担当の森本です。

今回は、  Mercurial を使うときに使用している便利なツールなどを紹介したいと思います。

というのも、Mercurial 本家の実装には GUI が有りません。つまり 本家の実装のみを使う場合、 “hg init”  のようにCUIから操作することになりますが、これでは利用できる人が限られてしまうので、まずは GUI から操作できるツールから見ていきましょう。

続きを読む

Copyright © 2019 Fenrir Inc. All rights reserved.