カテゴリー : 2013年 9月

[JavaScript] 日付や時刻をカンタンに扱えるライブラリ「moment.js」

JavaScript の日付や時刻をカンタンに扱えるライブラリ「moment.js」が超便利だったのでメモ。

Moment.js | Parse, validate, manipulate, and display dates in javascript.

moment/moment – github

JavaScriptで日付を扱うならこれ!「moment.js」 : アシアルブログ

[Android] エミュレータに apk ファイルをインストールする方法

Android エミュレータに apk ファイルをインストールする方法をご紹介します。

事前に Eclipse などから Android エミュレータを起動させておきます。

apk ファイルをインストールするコマンドは、「adb install APKのファイルパス」です。

% adb install ~/Downloads/myapp.apk 
2427 KB/s (34093911 bytes in 13.715s)
	pkg: /data/local/tmp/myapp.apk 
Success

これだけで、apk ファイルをエミュレータにインストールできます。

参考情報

[Gmail] 詳細検索、カスタム検索など

Gmail で、詳細検索、カスタム検索などをしたいときは下記のリンクを参考にする。

詳細検索 – Gmail ヘルプ

[jQuery] jQuery.ajax(options)、$.ajax のメモ

jQuery の $.ajax メソッドの引数や、success, error, complete などに指定する引数をよく忘れてしまうのでメモ。

jQuery 1.7 までの $.ajax

$.ajax({
  url: 'http://api.example.com/v1/posts',
  type: 'POST',
  dataType: 'HTML',
  data: {
    id: '123'
  },
  success: function(data, statusText, xhr){
    if (xhr.status === 200) {
      // 成功時の処理
    } else if (xhr.status === 302) {
      // HTTPステータスコードによって、処理を分岐
 
      // 302 でリダイレクトさせたり
      location.href = 'http://example.com/redirect';
    }
  },
  error: function(xhr, statusText, error) {
    // エラー処理
  },
  complete: function(xhr, statusText){
    // 共通処理
  }
});

jQuery 1.8 以降の $.ajax

success, error, complete が .done, .fail, .always に変更されているようです。

これについては、いつか更新します。


参考情報

jQuery.ajax()のまとめ: 小粋空間

jQuery モダンAjaxな書き方を目指して 〜Deferredを使ったAJAX〜 – Hack Your Design!

jQuery.ajax(options) – jQuery 日本語リファレンス

jQuery.ajax() | jQuery API Documentation

[Xcode5][CocoaPods] Apple Match-O Linker Error : ld: library not found for -lPods

Xcode5にアップデートすると、今まで通っていたビルドが失敗するようになりました。

エラーメッセージ その1

xcode5-cocoapods-error1

Apple Match-O Linker Error
Linker command failed with exit code 1 (use -v to see invocation)

エラーメッセージ その2

xcode5-cocoapods-error2

ld: library not found for -lPods
clang: error: linker command failed with exit code 1 (use -v to see invocation)
 
Library not found for -lPods
Linker command failed with exit code 1 (use -v to see invocation)

気になるWarningメッセージ

Pods was rejected as an implicit dependency for 'libPods.a' because its architectures 'armv7 armv7s' didn't contain all required architectures 'armv7 armv7s arm64'

CocoaPodsのアップデートで解決

cocoapods をアップデートします。

gem update cocoapods

アップデート後、改めて pod install します。

pod install

再度、ビルドすると正常にビルド完了しました。


参考情報

Objective-C – CocoapodsとXcode5の組み合わせでエラー出た+解決した – Qiita [キータ]

[iOS][Xcode] ビルドエラー「While reading … pngcrush caught libpng error」の解決方法

iOSアプリのビルドエラー「While reading … pngcrush caught libpng error」の解決方法をメモ。

CopyPNGFile エラーメッセージ

Command  emitted errors but did not return a nonzero exit code to indicate failure

CopyPNGFile エラーの解決方法

Project Target -> Build Phases -> Copy Bundle Resources にて、エラーが発生している画像ファイル名が重複して登録されている場合、片方だけ削除します。

Xcode-Copy_Bundle_Resources

以上です。


参考情報

ビルドエラー「While reading … pngcrush caught libpng error」への対処方法 – 甘いものが好きです

iphone – Not a PNG filCommand copypng emitted errors but did not return a nonzero exit code to indicate failure – Stack Overflow

[iOS] ビルドエラー(CopyPNGFile Error…)の対処法: ものづくりログ

[Xcode] C++11 Standard Library : libc++ (LLVM C++ standard library with C++11 support)

iOSアプリ開発で、QRコード用のライブラリ「ZXing」を使う場合にそのままではビルドが通りませんでした。

ビルド時に LLVM C++ を利用する必要があるそうで、その設定をメモ。


LLVM C++ の利用手順

Podsプロジェクトにて、Pods-ZXingを選択した状態で、

  • Build Settings
    • Apple LLVM 5.0 – Language – C++
      • C++ Standard Library

の項目を、Compiler Default から libc++(LLVM C++ standard library with C++ 11 support)に変更すればOKです。

Xcode-LLVM-Cpp


参考情報

XCodeでC++11を使う方法 – 亀岡的プログラマ日記

WordPress サーバの移行手順

WordPress サイトを旧サーバから新サーバへ移行したので、手順をざっくりご紹介します。

WordPress

移行元サーバでの作業

MySQLからダンプ

mysqldump --default-character-set=binary -h localhost -u dbuser -p dbname > backup.sql

WordPressのコンテンツ一式のバックアップ

次に、/var/www/vhosts/codenote.net に設置している wordpress コンテンツのディレクトリ以下を tar で圧縮します。

cd /var/www/vhosts/
tar zcvf codenote.net.tar.gz codenote.net/

ファイルを移行元サーバから移行先サーバへ転送

backup.sql と codenote.net.tar.gz を移行先サーバへ転送します。

移行先サーバでの作業

WordPressで使用するデータベースの作成

# mysql -u root
 
mysql> create database dbname;
mysql> grant all on dbuser.* to dbname@localhost identified by 'mypassword';

MySQLのリストア

mysql -u dbuser -p dbname < backup.sql

WordPressのコンテンツ一式の設置

/var/www/vhosts/ 以下にバックアップしたWordPressコンテンツの圧縮ファイルを展開します。

cd /var/www/vhosts/
tar zxvf codenote.net.tar.gz

念のため、所有者を全て Webサーバのユーザと一緒にしておきます。

chown -R nginx. /var/www/vhosts/codenote.net

以上です。

参考情報

[WordPress]「古いプラグインを削除できませんでした。」の解決方法

WordPressで、プラグインを削除しようとしたら「古いプラグインを削除できませんでした。」エラーが発生しました。

ディレクトリの所有者が apache や nginx になっていないのが原因だと思うので、chown で所有者を変更します。

WordPressサイトのインストールPathが /var/www/vhosts/codenote.net の場合、下記のような感じです。

# cd /var/www/vhosts
# chown -R nginx. codenote.net

以上です。


参考情報

wordpressでプラグインを自動アップグレードできないときの対処(応急処置) – sugarballの日記

[Linux] Host名(hostname)の変更方法

Linux で、Host名(hostname)を変更する方法をメモ。

例として、サーバのホスト名を codenote.net に設定するとします。

/etc/hosts にホスト名を追記する

# vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
 
↓(追記)
 
127.0.0.1   codenote.net localhost localhost.localdomain localhost4 localhost4.localdomain4

/etc/sysconfig/network の HOSTNAME を変更する

# vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=localhost.localdomain
 
↓(変更)
 
NETWORKING=yes
HOSTNAME=condenote.net

ホスト名の設定を反映する

特に問題なければ、サーバを再起動しましょう。

# reboot -h now

コンソールのホスト名が気にならない場合は、ネットワークの再起動だけでもOKです。

# service network restart

以上です。


参考情報

Linuxのホスト名を変更する