サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
2024年ランキング
nakawai.hatenablog.com
【環境】 Windows XP Pro SP2 XAMPP 1.7.3(MySQL 5.1.41、phpMyAdmin 3.2.4) 【現象】 上記環境にて、phpMyAdmin上からクエリを実行すると下記の1064エラーが出る。 #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(実行したクエリ)' at line 1 【発生する条件】 クエリにシングルコーテーション「'」が含まれている場合。 シングルコーテーションを削除するか、「`」に置換する必要がある。 【具体例】 エラーになる CREATE TABLE 'hoge'.'customers' ( 'i
App Engineのデプロイがとってもらくちんなので、FTPアップロードもEclipseから直接できないかな、と思ってぐぐったらAptana pluginにその機能があった。ちょうどAptana pluginも入れてたので、これを試した。 環境 Mac OS X Eclipse 3.5 Aptana Studio(plugin) 1.5.1 さくらのレンタルサーバ 手順 Aptana pluginはインストール済みとする。 1)FTPサイトを登録 パースペクティブをAptanaに切り替える 「File」ビューの「FTP」を右クリック、「Add New FTP Site...」を選択する。 Site Nameは自分でわかりやすい名前を。パッシブとかはAdvanced Optionsから設定できる。「Test」で接続テスト可能。 2)プロジェクトにFTPサイトをひもづける 「Project
参考ページ New Tools For Managing Screen Sizes | Android Developers Blog Screen-size Buckets OS3.1までの方法。 buckets dp 具体的な機種 small 426dp × 320dp QVGA[320 * 240] + ldpi = 426*320dp normal 470dp × 320dp large 640dp × 480dp WVGA[800 * 480] + mdpi(Dell Streak)、7 インチ タブレット全般。 xlarge 960dp × 720dp WXGA[1280*800] + mdpi (Xoomなどの典型的な10inch tablet) 初代Galaxy Tabは、[1024*600]+hdpi=682*400dpで本来はnormalだが、フレームワークのミスにより
なかなか一筋縄でいかなかったので、メモとして残しておきます。 目的 SAIをMacで使いたい。BootCampは再起動が面倒なので、フリーのVirtualboxが適当と判断した。Windows7のライセンスは新規購入。SAIが動けばいいだけなので、professionalやultimateではなくhome premiumにした。 環境 Mac OS X 10.6.3 (Core i7 Macbook pro 15インチ) VirtualBox for Mac (3.2.0 → 3.1.4 → 3.1.8) Windows7 home premium 32bit 道のり 3.2.0でインストールを試みるも失敗 気分が良くて何が悪い?| MacのVirtualBoxに Windows 7 をインストールする方法 上記のありがたいページを参考にVbox3.2.0にてインストールをすすめた。しかし
プロセスとアプリケーションとスレッドについての理解が非常にあいまいなため、整理してみます。 プロセスとアプリケーションのライフサイクルの関係 アプリケーション内のサービスやアクティビティが全部終了していても、プロセスは停止しない。 例えばアクティビティ1枚のアプリケーションを起動して、onDestroyさせてもプロセスは生きている。(DDMSのDevicesビューや、設定>アプリケーション>実行中 にアプリケーションが表示されている) Androidがこうする理由は、プロセスの生成コストによるバッテリー消費を避けるためらしい。 Androidの各アプリケーションは,システム上の1プロセスとして起動される。通常のLinuxディストリビューションであれば,ソフトウエアの終了はプロセスの停止を意味する。しかし,Androidの場合はユーザーがアプリケーションを終了しても,プロセス自体はすぐには停
イベント broadcast int EXTRA_WIFI_STATE NetworkInfo EXTRA_NETWORK_INFO WIFIをONにしています WifiManager.WIFI_STATE_CHANGED_ACTION="android.net.wifi.WIFI_STATE_CHANGED" WIFI_STATE_ENABLING ** WIFIをONにしました WifiManager.WIFI_STATE_CHANGED_ACTION="android.net.wifi.WIFI_STATE_CHANGED" WIFI_STATE_ENABLED ** アクセスポイントに接続中 WifiManager.NETWORK_STATE_CHANGED_ACTION="android.net.wifi.STATE_CHANGE" ** isConnected()==false
JUnit4の比較はorg.hamcrest.Matchers ある数値の未満とか以上とか以下とかを判定するには、org.hamcrest.MatchersのgreaterThan()やlessThan()を使えばよい。 Matchersの利用にはhamcrest-libraryが必要 で、そのorg.hamcrest.Matchersを利用するには、別途hamcrest-libraryなるものが必要。mavenのプロジェクトなら、pom.xmlに追加するdependencyは下記になる。 org.hamcrest hamcrest-library 1.1 test Slim3でAjaxを活用したアプリケーションを構築する (TOPGATE Google関連技術サイト) なかなかぐぐってもdependencyの情報が見つからなかったんですが、TOPGATE社のサイトで紹介されていました。
ボタンのデザインをする場合のために、デフォルトのボタンがどのように実装されているか調べます。 デフォルトのボタンは、Widget.Buttonというstyleが適用されている。(たぶん) Widget.Buttonスタイルの定義 android:backgroundにて、drawableのbtn_defaultが指定されている。 android.git.kernel.org Git - platform/frameworks/base.git/blob - core/res/res/values/styles.xml 173 <style name="Widget.Button"> 174 <item name="android:background">@android:drawable/btn_default</item> 175 <item name="android:focusabl
IntentServiceを使って非同期処理を行う - Tech Booster 上記で紹介されているIntentServiceについて、どういうものなのか調べようと思ったら、HandlerThreadというものが内部的に使われていました。 気になる名前のクラスなので、こちらを先に押さえることにします。 HandlerThreadを使うと何が出来るのか まず調べた結果を報告します。HandlerThreadは、Handler経由でメッセージをsendできる拡張スレッド、のようです。下記は調べたメモです。 IntentServiceのソースコード HandlerThreadを調べる発端となったIntentServiceは、Serviceのサブクラスです。ソースを見てみると、onCreate時にHandlerThreadを生成して、スタートさせています。 IntentService.javaの
「アカウントと同期の設定」みたいな画面をつくる 「アカウントと同期の設定」画面みたいな画面をつくるにはどうすればよいでしょう。 基本はPreferenceActivityだけど、フッター部分のボタンを追加するには工夫が必要そうです。 自作layoutにpreferenceを載せる方法 PreferenceActivityのレイアウト変更 - テクメモ 上記ページに、自作layoutにpreferenceを載せる方法が紹介されていました。 @android:id/listなListViewを持つlayoutをsetContentViewすると、preferenceが載るListViewを差し替えられるようです。ListViewにlayout_weightを指定しておかないとButtonが表示されませんでした。 SamplePreferenceActivity public class Sam
環境はmac OS X 10.6 下記を参考に。 Java API のソースコードを見たいのに Mac に src.jar が入ってない? - YKMbPP Java/Eclipse on MacOSX: where is the src.zip ? - Stack Overflow 上記に書いてあるパスをあたってみたけど、src.jarが見つからない。 ユーティリティ>Java Preferencesから最上段のJava SE 6をダブルクリックしたら、jdkに飛べた。そこから辿ったらsrc.jar発見。 /Library/Java/JavaVirtualMachines/1.6.0_22-b04-307.jdk/Contents/Home/src.jar EclipseのJava>Installed JREsでは /System/Library/Frameworks/JavaVM.fr
連絡先を表示したい場合 こうすると startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("content://contacts/people"))); ちゃんとDialtactsContactsEntryActivityがcmpに指定される。 12-08 20:22:51.547: INFO/ActivityManager(60): Starting activity: Intent { act=android.intent.action.VIEW dat=content://contacts/people cmp=com.android.contacts/.DialtactsContactsEntryActivity } NotePadの場合 NotePadではこのコードが // getData()の戻り値はUri.parse("
AndroidDev.jpに行ってきました。とても実践的な内容で大変参考になりました。みなさまありがとうございました。 会場はECナビさんの会議室でした。会場のフロア入り口が、オフィス離れしたおしゃれなエントランスだったのでたじろぎました。 箇条書きで、メモれた部分を残しておきます。 AndroidDev.jp 「Androidアプリの売れる仕組みについて」 : ATND 場所:株式会社ECナビ 大会議室8F 日時:19:30 〜 Androidアプリの売れる仕組み:テックファーム矢吹さん Androidはまだエンジニア層にとどまっていて、なかなかビジネスのほうにきていない? 矢吹さんは三年前にテックファーム入社。その前は居酒屋で店長さんをやっていた。 フィーチャーフォンの数が減ってきた。 アンドロイドのシェアがちょっとずつのびてきてる。 Xperia 60万台 Galaxy S 10万台
Androidアプリでスプラッシュ画面を表示させる方法 - MIRAI THE FUTURE Androidでスプラッシュ画面を表示する方法を調べていたらHandlerを使った処理が出てきたので、ついでに非同期処理を調べてみました。 別スレッドから画面描画はできない 別スレッドからGUIの状態を変化させるメソッドtext.setText()などを呼び出すと、CalledFromWrongThreadExceptionが発生してアプリは落ちてしまいます。 11-28 14:52:25.179: ERROR/AndroidRuntime(412): android.view.ViewRoot$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its v
AndroidでCursorのデータを一覧表示する場合、CursorAdapterが使用されていました。 このとき、データの更新をViewに反映するということについてフレームワークがなにを提供しているのかがわかりづらかったので、メモとして整理しておきます。 MediaStoreのデータをListViewで表示した場合 ContentProvider経由でCursorを取得し、CursorAdapterで表示するとどうなるか確認します。 そこで今回は、MediaStoreに保存された画像すべてを、ListViewで一覧表示してみます。 (サンプルなので、UIスレッドでクエリを発行しちゃいます) public class SampleCursorAdapterActivity extends Activity { /** Called when the activity is first cr
PC作業中、気がつくとついGoogle ReaderやTwitterをながめてるときがあります。たいてい集中力が切れていて、半ば無意識だったりするときなので、なかなか意識的に抑制できません。 そしたら、TwitterのTLでChrome Nannyなるものを知りました。上記の悩みを解決してくれそうだったので、早速導入してみました。 閲覧を抑止したいサイトを登録すると、自動でブロックしてくれる Chrome Nanny - Google Chrome 拡張機能ギャラリー 上記ギャラリーからインストールします。ブロックしたいURLを登録するには拡張機能>オプション>「Blocked URL」タブから設定します。 Block Set Nameに自分でわかる適当な名前を入れて、URLsにtwitterやreaderなど、ブロックしたいURLを一行ずつ設定します。 BlockTimeで、ブロックする
mixiアプリ「大喜利PHPプレイバック」を公開しました - 理系のためのTIPS集 上記エントリでも書きましたが、今年の目標だったmixiアプリの公開までなんとかこぎつけることができました。 アプリ名:大喜利PHPプレイバック URL:http://mixi.jp/view_appli.pl?id=16441 2012/02/28 追記 mixiアプリの仕様変更に伴い、上記のアプリは提供を終了しました。 公開日は2010年10月26日。現時点での利用者数は50人(!)です。大喜利好きな人は使ってみてください!(泣) このエントリの趣旨 Webプログラミング未経験だった自分がmixiアプリの開発をすすめるにあたっては、以前話題になった下記の2エントリにたいへん刺激を受けました。 文系ド素人がmixiアプリを開発〜リリースするまでのまとめ - kazu0620の日記 Webプログラミング素人
Android開発環境の構築 Eclipse編 上記エントリを参考にさせていただきました。 Eclipseの入手 http://www.eclipse.org/downloads/packages/release/galileo/sr2 3.6でちゃんと動作するか不安だったので3.5にした。 eclipse-java-galileo-SR2-macosx-cocoa.tar.gz Android SDKの入手 http://developer.android.com/sdk/index.html android-sdk_r07-mac_x86.zip 適当なフォルダに解凍。アプリケーション直下にした。 Android Pluginのインストール Eclipseの「Help」ー「Install New Software... 」で 下記を指定し、インストール。再起動する。 android -
タスクチェーンについてよくわかっていなかったので、実験してみました。 実装にあたっては下記を参考にさせていただきました。 Togetter - 「タスクキューのチェインについて」 Togetter - 「タスクキューのチェインについて2(Mapper APIで代替も検討?)」 Togetter - 「DeadlineExceedException発生時のリトライについて」 タスクチェーンのフロー チェーンの流れはこんな感じになりました。(cacooを使ってオレオレフローチャートで表現) 最初のリクエストで30秒以内に削除が完了すれば、6)7)8)は通らずに完結します。 実際のソースコード import static com.google.appengine.api.labs.taskqueue.TaskOptions.Builder.*; import java.text.SimpleDa
試しに重ねてみたところ、完全に一致したのでご報告します。
人気ソーシャルアプリの作り方〜超人気ソーシャルアプリの企画開発者によるパネルディスカッション : ATNDにいってきました。(Twitterタグは #sac2010) スタッフ、登壇者のみなさまおつかれさまでした。 ソーシャルアプリコンテスト 最初に、株式会社オプトさん主催のソーシャルアプリコンテストについて紹介がありました。こんなコンテストがあったの知らなかった。8/16締め切りとのこと。 以下、敬称略でパネルディスカッションの内容をメモ。聞き取れなかったところ、メモし忘れたところは抜けています。 お題その1「アプリの企画」 30個ぐらいのなかから筋のよさそうなのを育てる(DeNA) ブレストのときは動詞をいろいろ挙げる 最終的に「盗む」→「怪盗ロワイヤル」 2つパターンある。今はアプリの数が少ない(gumi) パターン1コンソールアプリのソーシャルか パターン2 時代を反映したタイムリ
EclipseでjQueryによるコーディングをするにあたっての、各種インストールメモ。 javascriptライブラリの補完ができるAptana AptanaのCode Assist機能は各種有名ライブラリ(jQuery, prototype.jsなど)に対応している。 Plugging Aptana into an existing Eclipse configuration - Aptana 上記が手順。更新サイトに http://update.aptana.com/install/studio を追加して、インストールする。(かなりたくさんのコンポーネントが追加される。) jQueryの補完を有効にする Help > Install Aptana Features でInstall Additional Featuresダイアログを表示 > Ajax Libraries > jQu
音読パッケージにはバージョンの差異がある 「英語上達完全マップ」と「みるみる英語力がアップする音読パッケージトレーニング」では、音読パッケージの具体的手順に差異があった。 英語上達完全マップ―初級からTOEIC900点レベルまでの効果的勉強法posted with amazlet at 12.06.10森沢 洋介 ベレ出版 売り上げランキング: 4524 Amazon.co.jp で詳細を見るみるみる英語力がアップする音読パッケージトレーニング(CD BOOK)posted with amazlet at 12.06.10森沢 洋介 ベレ出版 売り上げランキング: 1131 Amazon.co.jp で詳細を見る 「マップ」は2005年出版、一方「みるみる」は2009年末なので、「みるみる」のほうがバージョンは新しい。 「マップ」の音読パッケージ手順 0.読み解き。 1.テキストを見ながら
今朝いつものようにGoogle Chromeのはてブ拡張を使おうとしたら、はてなにログインしたにもかかわらず「ログインしていません」となってしまう現象が起きて困った。リロードしたりChromeを再起動してもログインできない。 環境 Mac OS X 10.6.3 Google Chrome 5.0.375.70 はてなブックマーク拡張 1.0.8 対処方法 ぐぐったところ、6/21にgoogle Chromeのはてブ拡張に不具合が発生していたようで、その影響なのかも。対処方法を当該エントリのコメントで書かれている方がいたので、試したら治りました。 CUTPLAZA-Tomo2010/06/22 16:14 GoogleChromeのはてブ拡張のログイン出来ない不具合は、 GoogleChromeのキャッシュの削除で直るようですね。 6/21 はてなブックマーク障害情報 - はてなブックマー
googlecode.comからslim3をチェックアウトしようとしてハマった現象。 いろいろぐぐってみたところ、どうやら下記のようなことだと推定できたので、回避策を載せておきます。 ■現象 Eclipse プラグインのsubversiveにて、httpプロトコルでsubversionリポジトリを追加しようとすると、下記のメッセージが表示され取得に失敗してしまう。 >Validate Location >Location information has been specified incorrectly. >svn: PROPFIND of '/svn': 501 Method Not Implementd >(http://○○○.googlecode.com) >Keep location anyway? ※上記現象はhttpプロトコルのみで起こり、httpsプロトコルでのsvn接続
Java Cloud Meeting Tokyo 2010 自分が参加させていただいたもの Seasar3がやってくる « Java Cloud Meeting Tokyo 2010 Google Web Toolkitのすすめ « Java Cloud Meeting Tokyo 2010 Seasarで動いているWebサービスCacooの裏側 « Java Cloud Meeting Tokyo 2010 Google App Engineプラットフォームの勘所 « Java Cloud Meeting Tokyo 2010 GAEの本質とSlim3によるサクサク開発誤解されがちな点 ※急遽内容変更によりSlim3はカット。 Seasar3はSpring+HotReloading(の予定) ひがさんによる、今のJava Cloudをとりまく情勢を踏まえた、現段階でのSeasar3の構想
エンティティグループはリレーションではない 祖先とか親とか子とかいう単語が出てくるので誤解しがちだけど、エンティティグループは、1:多のようなリレーションを表現するものではない。 トランザクションによりACID特性を保障したいときに設定するもの。 リレーションはkeyをコレクションで持ったり、Slim3のModelRefなどを使って表現する。 従来のリレーション(1:1、1:多とか、到達性とか)とは本来直交する概念です*2。 Entity Groupの意味ですが、同じEntity Groupに所属するEntity群の間でのみ、トランザクションが可能になります。 Entity Groupとその簡単な構成法 - Grな日々(uehajの日記) エンティティグループの構成は一通りではない Person(1)をルートとして、Person(2)とPerson(3)をひとつのエンティティグループに設定
bpstudy33と同日に開催されたajnk2について、@bufferings さんのUST録画をみながら理解したことをメモ。Cacooで描かれたという図がすごく見やすく、わかりやすかったです。bufferingsさんのブログにpdfとustへのリンクあり。 #appengine ja night in kansai 2 ( #ajnk2 ) を開催しました! - bufferings おさらい DatastoreによってBigTableに永続化 Pathっていうのは祖先キーとかのEntityGroupの情報 Queryは単一のKindのみ扱える スキーマが一定でなくてもよいことを「ソフトスキーマ」という プロパティ自体が存在しない(=Unset) Bigtableからのデータ取得 三種類の取得。a,b1,b2,b3,cとエンティティがある場合 Readは1エンティティの取得。(aのみ)
BPStudy #33に参加させていただきました。 前半は @kazunori_279 さんによる Google I/Oの貴重な最新レポートでした。 しかし私は前提知識が足りなかったため、ざっくりと理解するのがやっとでした。もったいないので、あとで復習したいと思います。 #appengine でComet! Channel APIでpushできるぞ - スティルハウスの書庫 BigQueryってなんぞ? - スティルハウスの書庫 「Slim3のすごいトコ」 後半は、 @shin1ogawa さんによる Slim3の紹介でした。 このエントリでは後半のslim3の内容を自分なりにまとめます。(といっても有識者の方の記事の引用やリンクが大半になります。参考にさせていただいた皆様ありがとうございます) プロパティ名を短くしてもコードの可読性を損ねない app engineでは、プロパティ名が長い
次のページ
このページを最初にブックマークしてみませんか?
『nakawai’s diary』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く