2015/07/01

[本]ヤンキー経済 消費の主役・新保守層の正体

読了。

ヤンキー経済 消費の主役・新保守層の正体 (幻冬舎新書)
原田 曜平
幻冬舎
売り上げランキング: 21,072
第一章はマイルドヤンキーの特徴を説明し、第二章ではマイルドヤンキーが誕生するまでの歴史的経緯そして、第三章でマイルドヤンキーの消費性向をさぐり、最後にそれに基づいてどのようなサービスを提供すればいいのかの考察と起承転結で話が進んでおり、非常にわかりやすかった。

最初、手にとる前に、マイルドヤンキーが誕生した仮説として、ITがこれだけ発達したためどこにいてもエンタメがほぼ無料で楽しめるし、どこに行ってもおいしいものが食べられるので、別に東京に出る必要もないし、物事に対して頑張る必要もないので、達観した人たちだと思っていたのだが、ほぼほぼあっていたみたい。

なので、消費の仕方がまったく違うというのが本書を通して理解できる。

今後、日本でプロダクトを作る上での非常に有益な資料として使えるなと。

2015/06/27

[本]はじめてのiOSアプリプログラミング入門 決定版

読了

はじめてのiOSアプリプログラミング入門 決定版 (-)
辨崎 宗義
秀和システム
売り上げランキング: 1,070,562

Chapter.1 iOS アプリの開発環境を整える

01 iOSとはなんでしょう?
02 iOS機器、iPhone、iPadの紹介
03 開発用マシンの用意
04 Apple IDの取得
05 Apple Developer登録
06 iOS SDKをインストールする
07 サンプルコードをダウンロードする
08 iOSシミュレータと実機での動作を確認する
Chapter.2 iOSの開発に必要な知識を身につける

09 iOSアーキテクチャの確認
10 Objective-Cとはどんな言語か?
11 オブジェクト指向とは何か?
12 Objective-Cの基本知識1 変数と型、演算子、文
13 Objective-Cの基本知識2 制御文
14 Objective-Cの基本知識3 ポインタ変数
15 Ovjective-Cの基本知識4 クラスの定義
16 Ovjective-Cの基本知識5 文字列と配列、辞書
17 Ovjective-Cの基本知識6 UIKitの中のGUI部品
18 Ovjective-Cの基本知識7 デリゲートとプロトコル
Chapter.3 Xcodeを使って簡単なアプリを作ってみる

19 最初のプログラムを完成させる
20 iPad版の最初のプログラムを作成する
21 デバッグ作業を行う
22 ストーリーボードを使う
23 ホームページを表示する
Chapter.4 iPhoneの機能を使ってみる

24 カメラを使ったアプリを作る
25 アルバムの素材を表示してみる
26 地図を表示してGPSとコンパスを使ってみる
27 iCloudを使ってみる
Chapter.5 アプリを配布する

28 ローカライゼーション
29 コードサイニングと配布の手順
30 配布用のApp IDを作成する
31 iTunes Connectで準備を行う
32 アプリのアップロードを行う

via:目次
amazonでは酷評されていたが、そんなに悪くはないんじゃーないかなー。

確かにUILabelと記述しなければいけないところをNSLabelって記述していたり誤字があるので、タイトル通り初心者が本書を通してプログラムをした場合、Buildが通らず確認できない事態に陥ってしまうので、よくはないかもしれないが、すでに少し触っていて、Interface BuilderとiCloudの使い方を学ぶにはわかりやすいんじゃーないかと思った。

実際に、本書を通して簡単なView構造の場合、今後、Interface Builderを使って実装しようかなと思った。

さすがに、storyboardは、まだ賛否両論があるので、難しいところではあるのだが。。。

というわけで、本書はタイトルを変更すれば結構いける良作なんじゃーないかと思った次第である。

2015/06/23

[iOS][Objective-C]UITableViewCellのフォントの大きさ

UITableViewCellのフォントサイズって一体いくつなのだろうか?

Default font size of UITableViewCell
によると以下のようになっているみたい。

UITableViewCellStyleSubtitle:
textLabel: Helvetica Bold, size: labelFontSize+1 (18 px)
detailsLabel: Helvetica, size: systemFontSize (14 px)

UITableViewCellStyleValue1:
textLabel: Helvetica Bold, size: labelFontSize (17 px)
detailsLabel: Helvetica Bold, size: systemFontSize+1 (15 px)

UITableViewCellStyleValue2:
textLabel: Helvetica Bold, size: smallSystemFontSize (12 px)
detailsLabel: Helvetica, size: labelFontSize (17 px)

ただ、これ、iOS4.2の時なので、iOS7以降また違うかもしれない。

2015/06/22

[iOS][Objective-C]UITableViewCellの左のマージンの大きさ

iOS7以降でUITableViewCellの中に文字列を設定した場合、自動的に左側にマージンができてしまう。

これって、そもそも大きさいくつなのかなーっと思って調べたら

How do I adjust the left margin for prototype cells in a UITableView?
という記事があり、15pointのようです。

2015/06/21

[iOS][Objective-C][Facebook]Facebook SDKのIDFAについて

iOSアプリを審査に提出する時に、IDFAについての確認を求められるのだが、facebook sdkを使った場合、どうすればいいのかわからなかったんだけど、
Does Facebook’s SDK for iOS access the IDFA?
というところに答えがありました。

The Facebook SDK includes code to access Apple’s Advertising Identifier (IDFA), but that code is only executed in certain situations.
The Facebook SDK for iOS only accesses IDFAs in the following scenarios: 1) if your app serves ads within the app through Facebook’s Audience Network, or 2) if your app logs app installs or other mobile App Events in order to attribute those events to your ad campaigns.
If you are not logging App Events (via the FBSDKAppEvents class), then the Facebook SDK is not accessing the IDFAs. Additionally, the Facebook SDK does not require AdSupport.framework to be included.
If you want to track App Events without collecting IDFA, you can disable IDFA collection within your app dashboard in the advanced setting section.

via:Does Facebook’s SDK for iOS access the IDFA?
ずばり、AppEventsを使わない場合は、IDFAを使っていないのかなと。

2015/06/20

[iOS][Objective-C][Google]Google Sign-In for iOSがiOS6に対応していなかった件

前回、Google plus platformに代わるGoogle Sign-In for iOSというのがリリースされて、かつ、それがiOS6に対応していると書きましたが、その後、googleの人から連絡があり、実は、iOS6には対応していなかった模様。

www

2015/06/19

[iOS][Objective-C]UITextFieldをreadonlyにする

UITextFieldはデフォルトだと編集できてしまうのだが、リードオンリーにすることは可能なのだろうか?

Easy way to disable a UITextField?で確認すると以下のようにすればいい。

UITextField *textField;
textField.enabled = NO;

2015/06/18

[Google App Engine][Python]sha256

ある文字列に対してsha256をするにはどうすればいいのだろうか?

14.1. hashlib — セキュアハッシュおよびメッセージダイジェスト
で確認すると以下のプログラムでいけた。

import hashlib
hashlib.sha256("string").hexdigest()

他の参考サイト
Pythonでsha256を計算する

2015/06/17

[iOS][Objective-C]- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPathが動かなくなる件

昨日のエントリーでUITapGestureRecognizerを使ってtapを検出する方法を書きましたが、UITableViewController上で実装してしまうと、

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

が動作しなくなる。

UITapGestureRecognizerの処理を削除すると、動くようになるのだが。

これ何故だろう?バブリングを考慮しても動くような気がするのだが。。。

2015/06/16

[iOS][Objective-C]UITapGestureRecognizerを使ってtapを検出

iPhoneプログラミングUIKit詳解リファレンスだとUITapGestureRecognizerの使い方がわからないのでEvent Handling Guide for iOSを見ながら、実装方法を確認する。

- (void)viewDidLoad {
     [super viewDidLoad];
 
     // Create and initialize a tap gesture
     UITapGestureRecognizer *tapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(respondToTapGesture)];
 
     // Specify that the gesture must be a single tap
     tapRecognizer.numberOfTapsRequired = 1;
 
     // Add the tap gesture recognizer to the view
     [self.view addGestureRecognizer:tapRecognizer];
 

}

- (void)respondToTapGesture{
 
}
むちゃくちゃ簡単にできた。
iPhoneプログラミングUIKit詳解リファレンス
所 友太
リックテレコム
売り上げランキング: 126,924