購入時は4Gメモリで意気揚々としていましたが、
平行して多くのアプリケーションを使うようになった昨今、
メモリが逼迫状態でした。
残り数M状態が頻繁になり、速度低下で作業が進まないことも。。。
そこでメモリの増設を決心!
Macのメモリ増設は人生初だったので、結構入念に下調べした。
その結果、わりと簡単であることが発覚w
まずは、ネットでMacノート用のメモリ8G(4Gx2)を購入。
お値段は3k程度、送料込みで3.5kでした。
まずはその安さに驚き!!
メモリが届きいよいよ取り付け!!
緊張しながらも裏蓋のねじを一個ずつ外していく。
外したねじはフタにテープで固定した。
どのねじがどこだったかを忘れないように。
そうすると一発でメモリの場所がわかる。
あとは、公式サイトの説明通りにメモリを2枚外す。
そして、新しいメモリを挿し込み、完了!
フタを閉めておしまい。
簡単過ぎてあっけないw
ここまで上半身裸になって作業しましたwww
次はHDDをSSDタイプにしてみたくなった!
そしたら少しは重量が軽くなるかな〜
2012年2月27日月曜日
東京スマートフォンAPPアワード
少し前からハマりだしているAndroidアプリ制作の一環でコンテストに出展してみた。
タイトルの通り、東京スマートフォンAPPアワードなるものである。
結果はどうあれちょっとした達成感を味わえた!
自分一人ではできないことはたくさんあり、
それをやってくれた仲間に感謝である!
これからもAndroidアプリ開発をしていきたいと思う!!
SoundPoolを使った効果音の扱い方や、
UIスレッド以外のスレッドによる処理とUIスレッドへの描画命令など
勉強できることはたくさんありました!
タイトルの通り、東京スマートフォンAPPアワードなるものである。
結果はどうあれちょっとした達成感を味わえた!
自分一人ではできないことはたくさんあり、
それをやってくれた仲間に感謝である!
これからもAndroidアプリ開発をしていきたいと思う!!
SoundPoolを使った効果音の扱い方や、
UIスレッド以外のスレッドによる処理とUIスレッドへの描画命令など
勉強できることはたくさんありました!
2012年1月19日木曜日
[Android]IntentでObjectをputExtraで渡す
既に題名に関する情報はいろんな方が公開しています。
自分のためにメモ。
Activityを新しく起動した際に、Intentを介してデータを渡したい、
こういったことがよくあると思います。
ふと、Object型を渡したいって思った時にやったことが無かったので
調べてみました。
最初にこのページを見つけて以下のヒントを得ました。
「Serializableインタフェースを実装することによって画面遷移でオブジェクトを渡すことが出来る」
ここで疑問に思ったのがなぜSerializableである必要があるのか?
まず、Serializableについて調べてみました。
http://d.hatena.ne.jp/daisuke-m/20100414/1271228333
http://www.ne.jp/asahi/hishidama/home/tech/java/serial.html
これらのページから分かることは、Serializableはオブジェクトを直列化、
つまりStreamにながせる状態にし、かつ、デシリアライズ可能であること。
文章がへたくそですみません。
消しゴム→ねりけし(シリアライズ)→(ストリート)→消しゴム(デシリアライズ)
的なイメージ?w
さらに分かりにくくなってすみませんorz
なぜ、Serializableでなければいけないのか、
内部的にどうやってデータを渡しているのか、
Androidのソースをダウンロードして解析してみたいと思います。
モチベーションが続いてたら、続く。
【追記】
Androidソースをダウンロードして探して見た!
詳細は不明だけど、IntentにputExtrasでセットしたデータは
ファイルに落とし込まれることは分かった。
ぜひ、どなたか詳しい方教えて欲しいですorz
「ファイルに落とし込むためにSerializableでなければならない」
という結論に至った。
詳しいことは依然として不明です...orz
自分のためにメモ。
Activityを新しく起動した際に、Intentを介してデータを渡したい、
こういったことがよくあると思います。
ふと、Object型を渡したいって思った時にやったことが無かったので
調べてみました。
最初にこのページを見つけて以下のヒントを得ました。
「Serializableインタフェースを実装することによって画面遷移でオブジェクトを渡すことが出来る」
ここで疑問に思ったのがなぜSerializableである必要があるのか?
まず、Serializableについて調べてみました。
http://d.hatena.ne.jp/daisuke-m/20100414/1271228333
http://www.ne.jp/asahi/hishidama/home/tech/java/serial.html
これらのページから分かることは、Serializableはオブジェクトを直列化、
つまりStreamにながせる状態にし、かつ、デシリアライズ可能であること。
文章がへたくそですみません。
消しゴム→ねりけし(シリアライズ)→(ストリート)→消しゴム(デシリアライズ)
的なイメージ?w
さらに分かりにくくなってすみませんorz
なぜ、Serializableでなければいけないのか、
内部的にどうやってデータを渡しているのか、
Androidのソースをダウンロードして解析してみたいと思います。
モチベーションが続いてたら、続く。
【追記】
Androidソースをダウンロードして探して見た!
詳細は不明だけど、IntentにputExtrasでセットしたデータは
ファイルに落とし込まれることは分かった。
ぜひ、どなたか詳しい方教えて欲しいですorz
「ファイルに落とし込むためにSerializableでなければならない」
という結論に至った。
詳しいことは依然として不明です...orz
ラベル:
Android,
Object,
Serializable,
インテント,
オブジェクト
2012年1月6日金曜日
AFreeChartを使ってAndroidアプリを作った
afreechartを使って実際にAndroidアプリで家計簿を作ってみた。
アプリ名:マネマネ
https://market.android.com/details?id=jp.tsuyoshi.mm
SlidingDrawを使ってグラフを表示させています。
興味がある人は参考にしてみてください。
アプリ名:マネマネ
https://market.android.com/details?id=jp.tsuyoshi.mm
SlidingDrawを使ってグラフを表示させています。
興味がある人は参考にしてみてください。
2011年11月12日土曜日
AFreeChartを動的に動かす
AFreeChartに関する情報が少ないと感じたので少しでも役に立てれば..
【やりたいこと】
Androidアプリでグラフを表示したい。
しかも動的(リアルタイム的な)に動かしたい!
※)TimeSeriesのサンプルをベースとする。
グラフ表示ライブラリを探した所いくつかあると言うことがわかった。
直感的にAFreeChartが一番良さそうな感じがしたので使うことにした!
AFreeChartの導入方法に関しては他のブログで書いている方が
いらっしゃるので割愛します。
サンプルソースを実行すると静的なグラフを表示することは簡単にできます。
動的にするにはAFreeChartが保有しているDatasetにデータを追加してあげると
自動的に再描画される。
なので、最初に思いつく方法としては動的にDatasetを更新して行けばできる、
だとうという方法です。
例えば、別スレッドを用意して100msごとにDatasetを更新するようなプログラムを
作って動かすとあることに気付くと思います。データ数が増えるに連れて、
恐らくGCが高頻度で発生し、
描画に時間がかかりUIスレッドに負担がかかり、
ANRを引き起こす可能性があります。
結果的にDatasetの更新をトリガーとして再描画して動的に見せる方法では、
限界があるということになります。
デフォルトのサンプルアプリだと、生成したAFreeChartインスタンスに
ChartChangeListenerがセットされているので、Dataset更新すると再描画が発生する。
それを抑えるためにはBaseView(511行目前後)でリスナーセットする処理をコメントアウトするか、
リスナーを登録を削除するか、
しないとダメです。
そうすると、Datasetを更新しても再描画されることはなくなります。
この状態だと再描画がなくてリアルタイムに見えません。
現段階での私のソリューションとしては以下のような感じです。
①Dataset更新用スレッド、再描画用スレッドの2つを生成する
②それぞれをstartさせる
③再描画スレッドは定期的にHandlerに対してView#postInvalidateを呼び出すだけ
パッと思いついただけの方法なので、もっと効率のいい方法があったら
ご教授願いますm(_ _)m
再描画スレッドは以下のような感じです。(一部抜粋)
もちろんこのままでは動かないので適宜に補完してください^^;
【やりたいこと】
Androidアプリでグラフを表示したい。
しかも動的(リアルタイム的な)に動かしたい!
※)TimeSeriesのサンプルをベースとする。
グラフ表示ライブラリを探した所いくつかあると言うことがわかった。
直感的にAFreeChartが一番良さそうな感じがしたので使うことにした!
AFreeChartの導入方法に関しては他のブログで書いている方が
いらっしゃるので割愛します。
サンプルソースを実行すると静的なグラフを表示することは簡単にできます。
動的にするにはAFreeChartが保有しているDatasetにデータを追加してあげると
自動的に再描画される。
なので、最初に思いつく方法としては動的にDatasetを更新して行けばできる、
だとうという方法です。
例えば、別スレッドを用意して100msごとにDatasetを更新するようなプログラムを
作って動かすとあることに気付くと思います。データ数が増えるに連れて、
恐らくGCが高頻度で発生し、
描画に時間がかかりUIスレッドに負担がかかり、
ANRを引き起こす可能性があります。
結果的にDatasetの更新をトリガーとして再描画して動的に見せる方法では、
限界があるということになります。
デフォルトのサンプルアプリだと、生成したAFreeChartインスタンスに
ChartChangeListenerがセットされているので、Dataset更新すると再描画が発生する。
それを抑えるためにはBaseView(511行目前後)でリスナーセットする処理をコメントアウトするか、
リスナーを登録を削除するか、
しないとダメです。
そうすると、Datasetを更新しても再描画されることはなくなります。
この状態だと再描画がなくてリアルタイムに見えません。
現段階での私のソリューションとしては以下のような感じです。
①Dataset更新用スレッド、再描画用スレッドの2つを生成する
②それぞれをstartさせる
③再描画スレッドは定期的にHandlerに対してView#postInvalidateを呼び出すだけ
パッと思いついただけの方法なので、もっと効率のいい方法があったら
ご教授願いますm(_ _)m
再描画スレッドは以下のような感じです。(一部抜粋)
もちろんこのままでは動かないので適宜に補完してください^^;
repaintThread = new Thread(new Runnable() {
public void run() {
while (!stop) {
if (pause)
pause();
mainHandler.post(new Runnable() {
public void run() {
// repaint();
timeChartView.postInvalidate();
}
});
try {
Thread.sleep(interval);
} catch (InterruptedException e) {
// TODO 自動生成された catch ブロック
e.printStackTrace();
}
}
}
});
repaintThread.start();
2011年10月13日木曜日
HUAWEI端末でLogCatが動かない
今日は面白いことが分かった!
研究室に届いたばかりのHUAWEIのAndroid端末でLogcatが動かなく、
エラーメッセージ一行のみ出力されてました。
調べたところ面白いことが分かったのでメモしておきます。
他のHUAWEIの端末でも試したところ同じような裏メニューが表示された。
カーネルデバッグが可能にするための設定ができます。
【裏メニューを出す方法】
ダイヤル画面で「*#*#2846579#*#*」とダイヤルするとメニューが表示されます。
Logcatを有効にするためには、
1)LoggingをOnにする
2)Log levelをverboseにする
3)OpenDump & Log でChanging log switchとOpen sleep logを有効にする
研究室に届いたばかりのHUAWEIのAndroid端末でLogcatが動かなく、
エラーメッセージ一行のみ出力されてました。
調べたところ面白いことが分かったのでメモしておきます。
他のHUAWEIの端末でも試したところ同じような裏メニューが表示された。
カーネルデバッグが可能にするための設定ができます。
【裏メニューを出す方法】
ダイヤル画面で「*#*#2846579#*#*」とダイヤルするとメニューが表示されます。
Logcatを有効にするためには、
1)LoggingをOnにする
2)Log levelをverboseにする
3)OpenDump & Log でChanging log switchとOpen sleep logを有効にする
情報源はHuawei U8510 IDEOS X3 Forumで、
2011年10月3日月曜日
ユーザに優しいUIはいいけど。。。
結果から言いますと、
Androidアプリをユーザに優しいように設計したら広告収入効率が激減しました。
でも一方でアプリのアクティブ数が以前より大分多くなった、
というのが良かった点ですね!
UI設計とマネタイズというのはバランスが大事だと
勉強できました。
Androidアプリをユーザに優しいように設計したら広告収入効率が激減しました。
でも一方でアプリのアクティブ数が以前より大分多くなった、
というのが良かった点ですね!
UI設計とマネタイズというのはバランスが大事だと
勉強できました。
登録:
投稿 (Atom)