2011年3月22日火曜日

ターミナルにおける android sdk 内のフォルダ削除

今日は時間が無いので短めに・・・。

開発に煮詰まって色々実験してて、ふとDDMSとかでフォルダ構成を見ていると、
「これまだあったの。。。」的なフォルダがゴロゴロ。。。

削除したいんだけど、中にファイルがあるからrmでは削除できない。。。

中に一杯フォルダも作っちゃったし、気がめいるなぁ。。。

なんて思っていたら

rmの後に-rを加えるだけで良いことが判明!

技術者さんには当たり前の事かもしれませんがアタシにとってはビックニュースでした。

rm -r /フォルダ名

これで完璧!!

2011年3月17日木曜日

android エミュレーター内のアプリケーションの削除

久々のメモ。

最近ふとした事からアンドロイドアプリの開発に取り組んでおりまして。。。

これがなかなかねぇ。。。。

最初はFlasCS5でAIRからの作成をしていたのですが、参考サイトがあまりにも少ないため、
Eclipse + android SDK  でエミュレーターで開発しております。

OSはmac。

実機は高くてね。。。買えないんです。。。

で、作ってみたのは良いものの、これってエミュレーターに載せたアプリはどうやって削除するわけ??って問題がすぐに浮上しまして。

なかなかややこしいのでメモ。

まずはターミナルを使わなきゃいけないのがとっつきにくい!!

バリバリの開発者様なら何て事は無いでしょうが、限りなく素人に近いアタシにはなかなかのもんです。

android sdk にデフォルトで入っているadbってコマンドを使うのだが、このadbってやつをコマンドと呼んで良い物なのかも未だに良くわからない。。。

環境的にはtest.apk を Eclipse経由でエミュレーターにインストールし、android sdk フォルダのなかのtoolsフォルダにadbとRuntime.apkが入っているという前提のメモです。

まずはターミナルでtoolsフォルダに移動

xxx$ cd /Users/xxx/android-sdk-mac_x86/tools/

xxxはmacのユーザー名。cd(多分チェンジディレクトリーの略)コマンドでtoolsフォルダまでのパスを入れると移動できるらしい。。。

▲▲▲▲▲-no-imac-4:tools xxx$

と表示されれば移動完了。

ここからがややこしい。

まず、

▲▲▲▲▲-no-imac-4:tools xxx$ ./adb shell

と入れて中身を表示。

これは中身がわかっていればやらなくても良い事なのだが、どこにアプリのデータがあるのかわからないアタシには必須項目。

▲▲▲▲▲-no-imac-4:tools xxx$ ./adb shell
#

となるので、
#ls

と入れると。。。


# ls
config
cache
sdcard
acct
mnt
d
etc
system
sys
sbin
proc
init.rc
init.goldfish.rc
init
default.prop
data
root
dev
#

と表示されます。

続けて

# cd data
# ls

と入れると。。。


# cd data
# ls
misc
local
app-private
backup
property
app
data
dontpanic
dalvik-cache
system
lost+found
#

と表示され、さらに


# cd data
# ls

と入れると。。。

# cd data
# ls
com.test ← 今回削除したいアプリのパッケージ名
com.android.server.vpn
android.tts
com.android.term
com.android.speechrecorder
com.android.spare_parts
・
・
・
以下省略
#

という風にエミュレーターに入っているパッケージ名がダァ〜っと出てくるので、自分が作ったアプリのパッケージ名を探す。

今回の場合は
com.test

削除したいパッケージ名がある事がわかったので、shellから抜けます。

コマンドは
#exit

といれると、
▲▲▲▲▲-no-imac-4:tools xxx$

に戻れます。

実際の削除は
▲▲▲▲▲-no-imac-4:tools xxx$ ./adb uninstall com.test

と入れて、
▲▲▲▲▲-no-imac-4:tools xxx$ ./adb uninstall com.test
Success

と表示されれば削除完了。

ざっくりまとめると、
インストール:./adb install zzz.apk(アプリケーション名)
アンインストール:./adb uninstall com.zzz(パッケージ名)

だそうです。

ちなみにwindowsのdosプロンプトでは ./adb の ./ はいらないみたい。

ややこしい。。。


2011年2月28日月曜日

phpMyAdminにおけるauto_incrementの初期化


タイトルみたいな大げさな話じゃないんですが。。。

auto_increment を扱ってるテーブルでテストをしまくっていると、いざ本番って時に auto_increment がとても半端な番号から始まったりします。

そんなとき。。。

そのテーブルの「操作」から「テーブルオプション」へ行き、auto_increment を「1(好きな番号)」と入力して「実行」ボタンを押すと、また1(入力した番号)から始まるみたい。

なるほど。

気づけばホントたいしたことないな。。。

2011年2月25日金曜日

ファイルアップロードの容量設定

phpでファイルアップロードをする際に、php.iniで

upload_max_filesize = 20M


とかにすると、それが最大アップロードサイズだと思っていたが。。。


全然アップされない。。。


なんだろなぁとウダウダ調べていたら、どうやら php.ini 内で容量を設定できる項目が3つあるらしい。


それが


memory_limit
post_max_size
upload_max_filesize


の3つ。


でどうやら大きさに順番があるらしく、


memory_limit > post_max_size > upload_max_filesize


の大きさに設定してやらないとダメらしい。


早く言ってよ。。。


これに何時間費やしたことか。。。


早速設定してみる事に。


まず
memory_limit は名前的にあまりいじる気がしないのでそのまんま。


初期設定で post_max_size が結構小さめに設定されてるみたいで、俺も


post_max_size < upload_max_filesize


ってな感じになっていまして。。。


post_max_size > upload_max_filesize


ってな感じに設定し直したらあっさり解決。


ホント早く言ってって。。。

2011年1月16日日曜日

外部音声ファイルサイズ .length の盲点

ちょっとした事から、簡易mp3プレーヤーをflashで作る事になり。。。

仕様的には2つの聴き比べように2つのプレイボタンとストップボタンとシークバー。
なんて事はないよく見るプレーヤーですが。。。

シークバー作るのって意外とめんどくさい。。。

再生位置の表示に欠かせない公式的なものが

handle_mc.x = SoundChannel.position / Sound.length * bar_mc.width;

クセ者は.length

ライブラリーに読み込んで、リンゲージの設定をした音源なら問題ないが、外部からの読み込み音源だと.loadで読み込んで、

var sd:Sound;
var sc:SoundChannel
var size:int
var range:int = bar_mc.width;
addEventLestener(Event.COMPLETE,load_comp);
function load_comp(Event):void{
size.length;
}

等してlength値を取得する必要があるみたい。。。

ちなみにfunctionで取得しないと値は0なので、シークバーのhandle_mcは動かない。

なので公式にあてはめると

handle_mc.x = sc.position / size * range;

って感じ。。。

気付けば当たり前の事だけど、早く言ってよ。。。