今日の役に立たない一言 - Today’s Trifle! -

古い記事ではさまざまなテーマを書いていますが、2007年以降はプログラミング関連の話がほとんどです。

2013-01-01から1年間の記事一覧

Wordpressの動作不良の原因はi-node枯渇だった

数日前にWordpressで記事を書こうと思って、その記事用の画像をアップロードしようとしたら、「一時フォルダが見つかりません」なんてエラーが出てアップロードに失敗した。ぐぐってみてもそれっぽい情報が得られないまま。他の仕事で忙しかったので放置して…

Google Chromeでローカルにファイルを出力するときの罠

大量のJSONファイルを編集する必要があるということで、JSONを扱うのならJavaScriptが簡単なんで、JavaScriptで自動化することにした。JSONファイルを出力する必要があるので、ちょっとぐぐってみたら、Google Chrome だけが FileSystem APIに対応していると…

MacOSXからsshしようとしたけど接続できなかった

net

MBPのターミナルから外部のホストにsshで接続しようとしたらエラーになった。 $ ssh satoshis@example.com:12345 ssh: Could not resolve hostname example.com:12345: nodename nor servname provided, or not knownポート番号をコマンドラインのオプション…

slim3のインクルードしたJSPで文字化けしたときの対処方法

slim3で開発していて、header.jsp と footer.jsp を jsp:include タグでインクルードした。そして、header.jsp と footer.jsp の中に日本語を書いたら文字化けした。 Eclipse上保存しようとした時にISO-8859-1じゃ保存できんからエンコードを選べって言われ…

tripwireが Out of memory エラーで異常終了するときの解決方法

Web

Wordpressのサイトの一部のファイルが改鼠されて何も表示できなくなるという状況が発生した。そのアドホックな対策としてファイルの改鼠を検出するためにtripwireを稼働させることにした。クラウドのサーバーを稼働させ始めたときにも動かそうとしたんだけど…

JavaScript ClientからApp EngineのCloud EndpointsでOauth2認証する方法

試行錯誤してできるようになったので、簡単にまとめる。 基本的にはここに書いてあるとおり。To use a Google Cloud Endpoint, you'll need to use the Google JavaScript client library. The code you need to add to use Endpoints is minimal, consistin…

Android で Google Cloud Endpoint を使う時のデバッグ版とリリース版の Client ID を切り替える方法

先に書いた、Google Maps M2 API for Android では、デバッグ版とリリース版で同一の API key が使えたけ。だけど、Cloud Endpoint の Client ID を設定するところは、複数の SHA1 を書けるようになってないので、別々の Client ID を生成するしかない。 な…

Google Maps V2 の API key はデバッグ版とリリース版の両方に使える

AndroidアプリでGoogle Maps V2 API を使うには、AndroidManifest.xml の中に、API keyを記述する必要がある。 <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" /> デバッグ版とリリース版で API key を使い分けるにはどうすれば簡単にできるのかわからずにぐぐってたら、同一の API key でデバッグ版とリリー</meta-data>…

App Engine のデプロイができなくなったときの解決方法

数日前の話。Google App Engine にGAEアプリをデプロイしたんだけど、90%くらいのところでリトライばかりしてて全然進まなくなった。 しばらく放置したけど状況が変わらないので、スクリプトを中止して、最初からデプロイをやり直してみた。すると、「409 Co…

GCMの実装中のIllegalAccessExceptionに悩まされた件

AndroidでGCMを受け取るためのサービスGCMIntentServiceを実装して試しに動かした時に、IllegalAccessExceptionが発生してた。 java.lang.IllegalAccessException: access to constructor not allowedその少し上を見ると、 Could not find class android.app…

Failed to create secure container smdl2tmp1 でAndroidアプリをインストールできない

新しいAndroidアプリを作って、Android2.2.1の端末で実行しようとしたら、こんなエラーがでて実行できなかった。コンソールのキャプチャ画像。 こちらはLogCatの内容。 Failed to create secure container smdl2tmp1 Failed to create container smdl2tmp1 a…

Google Playのアルファ/ベータテストを使ってみた

Google Play Developer Console でAndroidアプリのアルファ/ベータテストができるようになってたので、使ってみた。To make a great app, it’s important to get feedback from users early and often. Google Play Developer Console lets you test your ap…

Google Analytics のページからコピーしたトラッキングコードがバグってる件

Web

Google Analytics でのアクセス解析を数日ぶり?に見たら、Wordpressで作ってる2つのサイトのアクセス記録がまったく残ってなかったのでびっくりした。実際にアクセスは発生してるわけで、何かが原因でトラッキングできなくなったるらしい。Google Analytics…

Viewを画面の一番下に配置する方法

OK/キャンセルとか保存など、画面の一番下にボタンを配置したい時がある。 そのような場合のレイアウトの書き方。 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > // 上の方に配置するViewを書く </linearlayout>

Listに要素を追加しようとしたらUnsupportedOperationExceptionだった

AndroidアプリでListViewに設定するAdapterに新しい要素を追加しようとしたところで例外が発生してた。Listの元をたどると、 List<Hoge> list = Arrays.asList(new Hoge[0]); ってやってた。 その先は確認してないけど、Arrays.asList()でList化したオブジェクトは</hoge>…

コマンドラインからGoogle App Engineにデプロイする方法

EclipseからApp Engine にデプロイしようとしても、エラーが発生してなかなかデプロイできないことがときどきある。 意地になって何度も繰り返しても、なかなかうまくいかなかったので、コマンドラインから実行する方法を調べてみた。画面から操作するのがめ…

Google Cloud Endpoint で JsonMappingException が出る場合の対処方法

entity クラスのフィールドに、独自のクラスを追加してたりすると、クライアント側から取得しようとした時にこの例外が発生する。独自のクラスがサーバーサイドだけで利用しているのであれば、単にクライアント側に送信しないように設定すれば、例外の発生を…

コマンドラインからGoogle App Engine にデプロイする方法

WebアプリをGoogle App Engine にデプロイしようと思って、Eclipseでプロジェクトを右クリックして[Google]-[Appエンジンへデプロイ]をやるけど、何度やってもエラーになってデプロイできなかった。 出まくるエラーはこちら。ログを参照しろって、どこにログ…

Google OAuth Scope 一覧

web

使おうとした時になっていつも探すのでメモ。 Adsense Managementhttps://www.googleapis.com/auth/adsense Google Affitrate Networkhttps://www.googleapis.com/auth/gan Analyticshttps://www.googleapis.com/auth/analytics.readonly Google Bookshttps:…

GoogleのMobile Backend Starterのデモを動かしてみた - その2

昨日に引き続き、GoogleのMobile Backend Starterのデモを動かしてみる。今回は Getting Started の次に書かれてある Adding Google Cloud Messaging to the Sample というのを試してみる。Google Cloud Messaging(GCM)というのは、リアルタイムにサーバー…

GoogleのMobile Backend Starterのデモを動かしてみた

いまどきのモバイル アプリケーション開発では「クラウドとの連携」が欠かすことができません。とはいっても、データベース アクセスやユーザー認証といった定番の機能を利用するためだけに毎回サーバーを自分で立てたりサーバー側のコードをひと通り書いた…

EclipseのAndroidプロジェクトでRクラスが生成されない件

昨日、ひさしぶりにEclipseでAndroidプロジェクトを作成したら、何も新しいコードを書いたわけでもないのにエラーが出てた。genの中にあるはずのRクラスが生成されていない。プロジェクトをクリーンしてビルドしなおしても生成してくれないし、res内のxmlを…

Ack コマンドが便利すぎて grep 使わなくなりそうな件

Google+のストリームに流れてきたポストで初回されてたこのサイトに目がとまった。≫grepをよく使うプログラマはどう考えても乗り換えるべき新しいgrepコマンド「ack」:phpspot開発日誌Ackって、そんなに便利なのん?なんて思いつつ記事を読んでたら、開発者…

slim3で謎の404エラーに悩まされた件

たぶん、あんまり需要はないと思うけど書いとく。slim3でOAuthを使ったサービスを作ろうとしてた。OAuthを使った認証は前にも作ってるので、そこで作ったログイン関連のControllerクラスを新しいプロジェクトの中にコピーした。コピペで動いて楽勝なんて喜ん…

Slim3の開発でJettyのプロセスを停止する方法

EclipseでSlim3を使ったWebアプリを作ってる時に、Jettyを止めたくなる時がある。Jettyの起動直後であれば、コンソールビューの右側にある赤い■をクリックすれば止まる。 けど、JUnitテストなんかを動かすと、そのボタンは操作できなくなってしまう。そのよ…

Activityのソース巨大化を防止するには

Androidのアプリケーションを作っていると、Activityのソースが巨大化しやすい。その最大の理由はサンプルソースに有ると思う。世の中にあふれているサンプルソースとして書かれているコードのほとんど全部が、Activityのクラス内にコードを書いてしまってい…

WordPress入門の書

この前、北九州市で開催されたCMSのミーティングに出かけてきた。≫zusaar.com -&nbspzusaar リソースおよび情報参加レポートはパスするとして、かなり前にクラウド上にインストールして放置したままの WordPress のことを思い出した。試してみようと思ってせ…

BitNami RedmineのSubversionを動かそうとして超絶苦労した件

Web

超絶苦労する前のいろいろ 専門学校の授業でSubversionを教えようと思ったわけですよ。バージョン管理のメリットは学生のうちでも卒検とかではすごくメリットがあるだろうし。 そこで、まず専門学校に依頼してみたのです。すると、使えるサーバーがないとか…

Joomla!3解説サイト作成中

ずっと放置しっぱなしで、すでにサポートが終了してるし。もちろん、放置してる間にかかなりバージョンアップしてたので、新しいバージョンに対応したサイトを作成中。使ってみた感触だと、前よりもかなり設定が楽になってる。おかげで?前のサイトと同じ内…

TitaniumアプリにAdMob広告を表示する方法 - Android編

昨日は iPhoneアプリでAdMob広告表示できるようになったので、次はAndroidアプリでもチャレンジ。 まずはiPhoneアプリが動いた状態に何も手を加えないでAndroidエミュレータで動かしてみたら、ti.admobモジュールが見つからないって怒られたというところまで…