こんにちは、代表とエンジニアと営業と雑務をしています花井です。 今年のゴールデンウィークを使って一週間iOSアプリリリースチャレンジをしました。 分けあってGWにお金がなく時間ありまくりなんで、一週間でスマホかウェブのアプリリリース(申請)チャレンジしようかと。なんか作ってほしい面白いアイデア持っている人います? — naoyahanai@Japan (@hananaonao) 2016年4月26日 こちらをツイッターやフェイスブックでアイデアを募集したところたくさんのリクエストをいただきました。 なんでこんなチャレンジをしたかというと 「早くリリースできる環境を作る」ためです。 アプリを制作するのにかかる費用の大半はエンジニアやデザイナーの人件費です。 開発を始めてからリリースするまでの時間が短ければその分安く済むわけですね。 自社アプリを開発するにもご依頼を受けて開発するにも早いほうがみんなハッピーなわけです。 短期間でリリースするためには 一週間という期間を決めて開発すると色々と制限が出てきますが、裏を返せばそれさえクリアしてしまえば一週間でリリースできるわけです。 アイデアの中から次の項目でしぼっていきます。 打ち合わせがいらない、短時間 一週間しかないのですから打ち合わせなんてやってられません。 必然的にモヤっとしたアイデアは除外されます。 誰が、どんな時に、何のために使うのか。シンプルイズザベスト! 最小限の機能でも成り立つ アプリとして成り立つにはあれもこれも必要となると大変です。 例えば写真共有アプリの場合、最低限切って、貼って、色変えて、字が書けて、スタンプが貼れて、あと共有も、ユーザー登録、サーバー…無理です。一週間では機能が多すぎます。 本当に必要な機能だけでも大丈夫なアプリにしなければいけません。 メンテナンスがいらない、少ない 一週間でリリースしても、その後ユーザーサポートに手がかかると大変です。 バグの場合は仕方ないですが、サポートに手が割ける環境がない状態でリリース後のメンテナンスやユーザーサポートが多く必要になるアプリはきついです。 開発の資産が活用できる これは「アイデアが何か」というよりも「どうやって作るか」という部分です。 よくある話ですが、「こんなかっこいい見た目と動きを付けたいんだよね」というものです。ホームペー
こんにちは、花井です。 アプリケーション制作依頼をすると、どれくらいの料金がかかるのでしょうか? このような質問を受けることはとても多いです。 結論から言うととても高いです。 例えば病院予約サイトなどどんなに安く見積もっても2,3百万円はするかと思います。 どうしてそんなに高くなってしまうのでしょう? アプリ制作費用の見積もり方法 スマホアプリでもウェブアプリでもアプリケーションはプログラミングコードと写真などの素材でできています。 プログラミングは、コードを書けるエンジニアがいれば仕入れはいりません。 つまりアプリケーションは エンジニアの人件費 + 素材の料金 で出来ています。 エンジニアの人件費はどのように決まるかというと「プロジェクトの手間や難易度」で決まります。 手間がかかるほど必要となるエンジニアは増えますし、難易度が高ければ外注したり、学習費用もかかります。 このようにエンジニアの手間でアプリケーションの費用が決まることが多いため、プロジェクトの見積もりの算定にはエンジニアの人数に換算して 「○人月」と表現して見積もりを行います。 例えば10人月のアプリケーションの見積もりなら一人のエンジニアが10か月で制作できるという意味です。 2人のエンジニアだと5か月ですね。 では1人月はいくらなのか?!というわけです。 ある程度会社によって単価が違いますが、大体100万円ほどのところが多いようです。 高っか!!! と、思った方もいるかと思います。 しかし最近のエンジニアの給料はとても高く1人月が100万円でも安いくらいです。 どのくらいのプロジェクトが1人月なのか? 1人月が100万円とすると、どのくらいの機能を持ったプロジェクトが1人月なのでしょうか? これは細かいところまで詰めるととても大変ですが、以前制作した事例で説明します。 パーソナルトレーナーズウェイトトレーニング ウェイトトレーニングの記録を取ることによって体重や重量の変化をグラフ化し分かりやすくします。 参考はこちら http://personaltrainerjapan.jp/weighttraining/ このiPhoneアプリの機能と人月は iPhoneアプリ全般機能と申請など 半週間 グラフ化など処理 一週間 バックアップ処理 半週間 アプリ紹介ウェブサイト 一週間 写真などの素材 5万
今回はこのフェイスブックログインで得られる情報や活用の仕方を説明していきます。
この記事はウェブサービスなどに関わる非エンジニア向けの記事です。
「簡単なことを簡単に理解する」ことがこの記事のゴールです。
Parseでfacebookログインしてみる。x-Code,objective-c編第2弾です。 前回のFrameworkや設定の話はこちら。 Parseでfacebookログインしてみる。x-Code,objective-c編① x-codeで書いていきましょう。 xcodeでごりごり まずはParseとFacebookの下準備が必要ですのでAppDelegateに書いていきます。 #import <Parse/Parse.h> #import <FBSDKCoreKit/FBSDKCoreKit.h> #import <FBSDKLoginKit/FBSDKLoginKit.h> #import <PFFacebookUtils.h> - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { ; ; ; ; ; return application:application didFinishLaunchingWithOptions:launchOptions]; } -(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{ return
今回はParseでfacebookログインする方法を書き留めておきます。 Parseって何? まずParseとはmBaaS(mobile backend as a service)の頭文字をとったもので、バックエンドサービスやプッシュ通知などのバックエンドサービスを便利なAPIを使って簡単?に実装することができるサービスです。 mBaaSは国内でもNIFTY Cloudなどのサービスはありますが、今回は一番有名なParseを使ったサービスを実装します。 今回はfacebookログインをします Parseのサービスはいろいろありますが今回はfacebookログインを実装します。 開発環境 x-code6.3.2 FacebookSDKs-iOS(CoreKit-v4.2.0,LoginKit-v4.2.0,ShareKit-v4.2.0) iOS8.3 Parse SDK for iOS v1.7.4 CocoaPods 出来上がり 今回の出来上がりはlogInをログに出して、Parse側でユーザー登録を確認するところまでをやります。 Parseの準備 まずはParse側の準備です。 Parseで登録をして、Parse側と連携できるようにします。 Parse.comはこちら Parse側のFrameworkをx-codeにぶち込んで連携してください。やり方はParse.comのgetting startで簡単にできるので詳細は省きます。 今回はframeworkをCocoaPodsを使って管理しますので、podfileにParseのframeworkを書きます。 またFacebookのSDKも必要なので一緒に入れておきましょう。 こんな感じですね。 target 'testapp' do platform :ios, "8.0" pod 'Parse', '~> 1.7.4' pod 'ParseFacebookUtilsV4', '~> 1.7.0' pod 'ParseUI', '~> 1.1.4' pod 'ParseCrashReporting', '~> 1.7.4'...
iOSでFacebookLoginしよう!もちobjective-cでね。の第二回です。 前回はこちら。iOSでFacebookLoginしよう!もちobjective-cでね。 ではXcodeを開いてゴリゴリと書いていきましょう。 お楽しみのハードコーディング まずはAppDelegateで下準備が必要です。 AppDelegate.m #import <FBSDKCoreKit/FBSDKCoreKit.h> #import <FBSDKLoginKit/FBSDKLoginKit.h> - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { ; return application:application didFinishLaunchingWithOptions:launchOptions]; } - (void)applicationDidBecomeActive:(UIApplication *)application { ; } - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation { return application:application openURL:url sourceApplication:sourceApplication annotation:annotation]; } を追加します。 次にviewControllerに書いていきます。 //viewController.h #import <FBSDKLoginKit/FBSDKLogin
iOSアプリを作るならFacebook Loginをしたい!そんな風に思うのは僕だけですか? 今回はFBSDKを使って簡単にiOSアプリと連携する方法を説明します。 環境 x-code6.3.2 FacebookSDKs-iOS(CoreKit-v4.2.0,LoginKit-v4.2.0,ShareKit-v4.2.0) iOS8.3 結果 こんな感じにfacebookでログインして情報を取得する感じです。 ログインへの道 FacebookSDK関係をゴニョゴニョ X-codeの設定をイジイジ コードをゴリゴリ の3ステップで構成されています。 FacebookSDKやらその周辺 まず、Facebookのアカウントは持ってますよね。けれどそれだけでなくFacebookの開発者登録をする必要があります。 開発者登録については詳細は省きます。 開発者登録を済ませたら、アプリ別の識別のためにMyAppを取得します。 My Appの設定 ここからFacebookデベロッパーのページへ行けます。 次に詳細設定。 この辺は適当に記入してください。テストではなく、カテゴリーはユーティリティーにしました。 作成したらセッティングのところでアプリの設定をします。 add Platformで アプリ情報を追加。 で、上図の右上のQuick StartとクリックするとSDKのインストール画面へ行きます。 SDKをインストールandビルド SDKをインストールしてビルドします。 ビルドするとCoreKit-v4.2.0,LoginKit-v4.2.0,ShareKit-v4.2.0が生成されるのでX−codeへぶっこみましょう。 それから info.plistを開いてこんな感じにゴリゴリです。 FacebookAppID →さっき作ったAPPのID(例1234) FacebookDisplayName→さっき作ったDisplayName Item→fbとFacebookID(例fb1234) こんな感じでFacebookSDKとXcodeの設定はOKです。 さぁお待ちかねのハードコーディングの時間です。が少し長くなってしまったので第2回に続きます。 iOSでFacebookLoginしよう!もちobjective-cでね。②へ
簡単なナビアプリデモを作った時にMKDirectionsを使用したので簡単に備忘録として書きます。 MKDirectionsは出発地点と到着点を設定すれば簡単にナビアプリを作ることができます。 まずは出発点と到着点の座標をCLLicationCoordinate2Dで作成します。 CLLocationCoordinate2D fromCoordinate = CLLocationCoordinate2DMake(_fromPlaceLuti, _fromPlacelon); CLLocationCoordinate2D toCoordinate = CLLocationCoordinate2DMake(_toPlaceLuti, _toPlacelon); 次に作成したCLLocationCoordinate2Dを設定してMKPlaceMarkを作成します。 MKPlacemark *fromPlacemark = initWithCoordinate:fromCoordinate addressDictionary:nil]; MKPlacemark *toPlacemark = initWithCoordinate:toCoordinate addressDictionary:nil]; MKPlaceMarkからMKMapItemを作ります。 MKMapItem *fromItem = initWithPlacemark:fromPlacemark]; MKMapItem *toItem = initWithPlacemark:toPlacemark]; MKItemをセットしてMKDirectionRequestを作成します。 MKDirectionsRequest *request = init]; request.source = fromItem; request.destination = toItem; request.requestsAlternateRoutes = YES; MKDirectionRequestからMKDirections
iOS8で現在地取得する時に変更があり、少し手間取ったので備忘録です。 info.plistに追加 LocationManagerの呼び出し iOS8で現在地情報を取得するには info.plistに追加 NSLocationWhenInUseUsageDescription(使っているときは位置情報教えてよ)もしくはNSLocationAlwaysUsageDescription(いつでも位置情報教えてよ)で位置情報取得前にユーザーに使用許可をもらう必要があります。 そこで許可をもらうアラートを出す必要があるのですが、それをinfo.plistに書いておきましょう。と言うより強制です。 書かないで呼び出してたら怒られます。 info.plistの追加ですが。一覧には出てこないので、一文字も間違えずに書いてください。 次にCoreLocation側の設定です。 CoreLocationの設定 まずCoreLocationインスタンスを生成します。もちろんCoreLocationもimportします。 #import <CoreLocation/CoreLocation.h> @interface ViewController : UIViewController<CLLocationManagerDelegate> @property(nonatomic)CLLocationManager *Manager; @end 次にDidViewApperで位置情報許可を要請してください。ViewDidLoadではなぜか出来ません。 -(void)viewWillAppear:(BOOL)animated{ //corelocationAllowed _Manager = init]; if () { ; } } コードは使用中は位置情報欲しいよのrequestWhenInUseAuthorizasionです。 呼び出して、許可をしたらもうOKです。 あと