fedora13 64bit へ Flash plugin

fedora13 64 bit へ flash plugin を入れてみました
参考サイトは
Flash Player “Square” Preview Release 2 on Fedora 13 64bit
Adobe Labs
から
ownload plug-in for 64-bit Linux (TAR.GZ, 4.1 MB)
をダウンロードします
他にもセッティングできるように
cp $HOME/ダウンロード/flashplayer10_2_p3_64bit_linux_111710.tar.gz
でファイルを Dropbox へコピー
その後、
tar zxvf $HOME/Dropbox/flashplayer10_2_p3_64bit_linux_111710.tar.gz -C $HOME/.mozilla/plugins/
を実行することで
$HOME/.mozilla/plugin
へファイルをコピーします
ちなみに、-C オプションは、指定したディレクトリに
ファイルを展開するというものです
これを
vi setup_fedora13_64.sh
で スクリプトを作成し、内容を
#!/bin/bash
tar zxvf $HOME/Dropbox/flashplayer10_2_p3_64bit_linux_111710.tar.gz -C $HOME/.mozilla/plugins/
としてDropbox へ一緒に保存しておけば
ほかの fedora13 64bit へも簡単に適用できます
ただし、セットアップしたら、firefox を再起動しましょう
これで 64bit でも Youtube が見れます

wireshark

サーバー公開とセキュリティの勉強のため、
パケット関連の勉強をはじめようと思います
手始めに、パケット解析などを行えるツール
Wireshark を使ってみます
今回、実験するのは
ubuntu 10.10 です
sudo apt-get -y install wireshark
でインストールできます
これで、準備はできたのですが、起動するときには、
一般ユーザではなく、管理者権限で実行します
端末を開き、
sudo wireshark &
もしくは
sudo su
wireshark &
と実行することで、起動できます
一般ユーザでも起動できたのですが、
解析するインターフェースを選ぶことができませんでした
管理者権限で起動したら、調べたいインターフェースを選択します
すると、キャプチャが開始されますので、
これでネットワーク監視が可能になります
とはいっても。なれないとまったく意味が分かりません
Source はデータの転送元
Destination は データの転送先になるようです
Protocol は TCP や UDPなどの通信プロトコル
info には詳細情報が載ります
このinfo に、ネットに接続して閲覧しているときの情報がでます
PNG などの文字があれば、画像を閲覧していることがわかります
このときにキャプチャした画像は
File > Export > Objects > HTTP で表示されます
この画像を保存しておくには
Save All を選択し、任意の場所を選び、ディレクトリ名を
名前 のところの欄へ入力し。OKを押します
私の場合は、
/home/wiki/ドキュメント

samplechap
というディレクトリ名で保存しました
ただし、すべてのファイルを保存することはできませんでした
画像関連については、ほぼ問題なく保存されていると思われます
Wireshark を終了するときに
Quit without Saving
を選べば、キャプチャ内容を保存せずに終了します
Wireshark に関しては
ネットワークエンジニアを目指して
というサイトに詳しい説明が載っていましたので
参考にしながら勉強していこうと思います

Android アプリ作成(タッチ処理編)その4

Android アプリ作成(タッチ処理編)その3
の続きになります
まず、
public class test2Activity extends Activity {
の下に
SoundPoll sp;
int sound;
を記述し、
赤いラインがでているので、
SoundPoll のところへカーソルを持っていって
import SoundPoll (Android widget)
をクリックし、インポートします
int sound は音声ファイルの読み込みに使うための変数です
次に、
sp = new SoundPool(1,AudioManager.STREAM_MUSIC, 0);
を記述します
例のごとく、自動的に候補がでますので
実際にはかなり楽に書き込めます
続いて
sound = sp.loa
まで書き込むと候補がでてきますので
load(Context context, int resid, int priolity); int – SOundPool
を選択すれば自動的に書き込まれます
context を this へ、
resid を R.raw.dummy-message
と指定しようとしたのですが
[2011-02-19 00:07:17 – Test2] res/raw/dummy-message.wav: Invalid file name: must contain only [a-z0-9_.]
となるため、ファイル名を変更します
Eclipse の raw > dummy-message.wav
を右クリックし
Refactor > Rename 
もしくは
Shift + Alt + R
を押してファイル名を変更します
ファイル名を dum.wav
にして
resid を R.raw.dum
pliority を 1
へ変更します
そして
Button button = (Button)findViewById(R.id.Button02);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
sp.play(sound, 1.0f, 1.0f, 0, 0, 1.0f);
}
});
を追加します
sp.play(sound, 1.0f, 1.0f, 0, 0, 1.0f);
は、音声再生の設定です
play()
の中の数値ですが、左から
サウンドの番号
左スピーカーの音量 (0.0~1.0)
右スピーカーの音量 (0.0~1.0)
優先度 (0が最優先数値になる)
再生速度 (1が標準。2で倍速、0.5で半分)
となります
かなりわかりにくくなったので、以下が
main.xml の全文になります
-------------------------------------------------------
package jp.co.nikkeibp.test2;
import android.app.Activity;
import android.media.AudioManager;
import android.media.SoundPool;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class test2Activity extends Activity {
SoundPool sp;
int sound;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
sp = new SoundPool(1,AudioManager.STREAM_MUSIC, 0);
sound = sp.load(this, R.raw.dum, 1);
Button button = (Button)findViewById(R.id.Button02);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
sp.play(sound, 1.0f, 1.0f, 0, 0, 1.0f);
}
});
}
}

--------------------------------------------------—-

Android アプリ作成(タッチ処理編)その3

Android アプリ作成(タッチ処理編)その2
をさらにカスタマイズし、音がでるように改造します
参考資料は、日経Linux 2011-03 です
新しく res の下に raw というディレクトリを作成します
まず
res ディレクトリの上で右クリックし
New > Folder
で設定ウィンドウがでてきますので
Folder name: の欄へ raw と入力し
Finish
をクリックします
これで、ディレクトリが作成されます
ちなみに、英語なのは
私の場合
DropBox とスクリプトで開発環境
にあるように、スクリプトでインストールしたときに
日本語化処理を行っていないためです
今後、英語のサイトなどを使うときの練習として
なるべくプログラミングは日本語化せずにできそうなものは
英語にしてみようと思っています
幸い、Eclipse は日本語化されて説明されていることが
多いので単語を置き換えながら
進めれば、なんとかなります
習慣化してくれば、気にならなくなります
日経 Linux 2011-03では don.wav
というファイルを使っているそうですが、
ubuntu には入っていませんし、再現性の問題から
デフォルトで入っている音源を使おうと思います
サンプルの音声が
/usr/share/sounds/
の中にありますので、好きなディレクトリの中のファイルから
使うことにします
今回は
ubuntu 10.10
の中の
/usr/share/sounds/speech-dispathcer/
の中にあるダミーメッセージファイルになる
dummy-message.wav
を使います
これをドラッグ&ドロップして、Eclipse の
raw ディレクトリにもっていきます
これで、音声ファイルが用意できましたので
それでは、引き続き java コードの改造をしていきます
今回、追加するのは
SoundPool クラス
(ゲームやボタンクリックの効果音など
 比較的短い音声再生につかうらしいです)
load メソッド
(音声ファイルの読み込みに使用)
playメソッド
(音声ファイルの再生に使用)
今回は、変更するために、いちど
setContentView(R.layout.main);
の下からの部分を切り取ります
切り取るのは
Button button = (Button)findViewById(R.id.Button02);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
TextView textView=(TextView)findViewById(R.id.TextView01);
textView.setText(“ボタンをクリックしたよ”);
}
});

の部分です
念のため、後で直せるように
アプリケーション > 
アクセサリ > Tomboy メモ
で新しいメモを開き、
張り付けておきます
これで、最悪の場合、この部分を張り付けて元に戻します
これで、バックアップもできたので
安心して機能を追記できます

Android アプリ作成(タッチ処理編)その2

Android アプリ作成(タッチ処理編)
の続きになります
ちなみに、参考書籍は 日経 Linux 2011-03です
写真入りの解説なので、わかりやすいです
ここで、main.xml のTexiView01 を取得し、 Text の
内容を変更する処理を追記します
public void onClick(View v) の下に追記します
TextView textView=(TextView)findViewById(R.id.TextView01);
今回もインポートすることが必要になるので
import TextView (Android widget)
をクリックします
これにより、文字列を表示する機能
TextView を使えるようになります
そして、その下へ文字列を表示する設定を記述します
文字列を表示するには
setText()
を使います
textView.setT
まで入力すると、候補がでてきますので
setText(CharSequence text);void
を選びます
そして、() の中を
“ボタンをクリックしたよ”
というように書き換えます
textView.setText(“ボタンをくりっくしたよ”);
という文になります
あとは保存して、実行すればボタンを押すことで
ボタンの下の文字が変わることを実感できるはずです

Android アプリ作成(タッチ処理編)

今度は、簡単な処理をする動作をつくってみます
まず、TextView を追加します
追加するには
Graphical Layout で
TextView をドラッグ&ドロップします
さらに
Show in > Propeties

T3ext の値を @string/hello
へ変更します
また、
main.xml の layout?height を wrap_content
にして文字に合わせ
layout_width を fill_parent にして
画面に合わせました
ここからは処理機能を追加するので、java のソースコードを改造していきます
まず、
src
というディレクトリの2階層下にある
Activity.java
を開きます
もう少し正確にいえば
アプリケーション名(testapplicationなど) >
src >
パッケージ名(jp.co,nikkei.testapplicationなど) >
Activity.java
という階層になっています
今回は Button2 をクリックしたら
TextView の内容が変わるというシンプルなものです
まず、
setContentView(R.layout.main);
の下に
Button button = (Button)findViewById(R.id.Button02);
を追記します
まだButton が java の標準機能に組み込まれていないので
Eclipse で赤い下線が引いてある Button にカーソルを合わせ
import “Button” (Android wodget)
をクリックすることでインポートされます
これを行うことで、
import android.widget.Button;
が追記されます
この次に、ボタンを押したときの処理を書きます
ボタンをクリックしたときの処理は
setOnClickListener() を使いますが
全部入力せずとも
Button.setOnC
まで入力すれば、Eclipse で候補をだしてくれるので
該当するものをダブブクリックすれば自動入力されます
このときできた
Button.setOnclickListener(1)
の1の部分を消し
new View.setOnClickListener
を追記するのですが
new View.OnC
まで入力すれば、さきほどと同じように Eclipse が候補を選別してくれます
これにより、自動的に
public void onClick(View v){
}
が追記されます
Eclipse ってほんとに便利だと思います

Android アプリ作成(ボタン表示編)その3

引き続き。Android プログラミングです
今回は、前回までとは異なり、main.xml ではなく
string.xml
を変更していきます
一般的に、レイアウトはmain,xml
文字列は string.xml で記述するようです
文字列を追加するには
string.xml の
Resource タグをクリックし、GUI で設定するか、もしくは
string.xmlを改造します
Resources で文字列を追加するには
Add > string
で設定画面をだし
Name に button1
Value に ここを押して
と入力します
これで、自動的に string.xml に追記されています
これで、新しくボタンを
Graphical Layout で Button をドラッグ&ドロップし
作成します
プロパティを変更したいので
ボタンの上で 
右クリック ≫ Show in > Properties でプロパティ画面をだします
今回は、 string.xml の設定を反映させてみたいので
Text の部分に @string/button1 を記述します
さらに、
layout width を fill_parent へ変更します
これで、新しくできたボタンには
ここを押して
という文字が表示されています
また、main.xml には
<Button android:id=”@+id/Button02″ android:layout_height=”wrap_content” android:text=”@string/button1″ android:layout_width=”fill_parent”>
というコードが追記されます
今回の例からわかったのは
string.xml ファイルから
<string name=”button1″>ここを押して
を呼び出しているように
string.xml からソースを読み込むには
@string/NAMEの値
を指定するということです
つまり、今回の場合なら
<string name=”button1“>ここを押して
になるというわけです

Android アプリ作成(ボタン表示編)その2

引き続き、ボタン設定の続きです
今回は、作成したボタンの設定をかえてみます
ボタン作成については
Android アプリ作成(ボタン表示編)
に箇条書きでメモってますので
参考にしてください
ボタンのレイアウトを変更するため、
XMLを変更します
現在、初期の状態では
Layout height
つまり、ボタンの高さ
そして
Layout witdh
ボタンの幅
の設定が
wrap_content
になっています
このwrap_content
文字のサイズに合わせて、自動でサイズ調整する
という意味になります
これを画面の幅に合わせるようにするには
fill_parent
に変更します
変更の方法ですが
Graphical Layout を使う方法と、
main.xml を編集する方法があるのですが
Grahical layout を使って
表示されているボタンの上で 右クリック > Properties > fill_parent
となるはずですが
私の環境ではできなかったので
直接 main.xml
を編集しました
main.xml のなかに
%lt;Button android:id=”@+id/Button01″ android:text='”ぽちっとな (笑)”‘ android:layout_width=”wrap_content” android:layout_height=”wrap_content“>
という部分がありますので
この wrap_content を fill parent へ変更します
%lt;Button android:id=”@+id/Button01″ android:text='”ぽちっとな (笑)”‘ android:layout_width=”fill_parent” android:layout_height=”wrap_content”>
これで、ボタンの横幅が文字ではなく
画面の大きさに合わせたものに変わります
また、サイズ指定も可能です
%lt;Button android:id=”@+id/Button01″ android:text='”ぽちっとな (笑)”‘ android:layout_width=”100px” android:layout_height=”wrap_content”>
というようにすれば、サイズも指定できます

Android アプリ作成(ボタン表示編)

こんどは、ボタンの表示についての勉強です
前回は、文字の表示の変更でした
今回は、ボタンを配置します
前回、使用した main.xml ファイルにある
<TextView
android:layout_widh=”fill_parent”
android:layout_height=”wrap_content”
android:text=”@string/hello”
/>
の部分を削除します
ちなみに、この意味ですが
fill_parent は画面と同じ幅で文字を表示
wrap_content で高さを自動的に調整
@string/hello で string.xml のhello の値を画面に表示
となります
では、今回のボタンの配置になります
XMLを記述するという方法もありますが
残念ながら、面倒でもあり、そもそもXMLを理解できていないため
GUIで操作できる
Graphical Layout を使い、Buttonをドラッグ&ドロップし
右側にある画面に配置します
これはIDEなどでアプリを作るときによく使います
このパズルのような画面と、ソースコードがリンクしているので
このパズルのような画面に部品を
ドラッグ&ドロップで配置すると
main.xml の中にもXMLのソースが自動的に記述されます
この追加したボタンのうえで右クリックし
Show in > Properties を選択すると、プロパティを出せますので
この中の値から、Text を探し、
Value のところに好きな文字を記述します
英語でなら問題ないのですが
日本語の場合、value に記述するときには
“” で囲みましょう
<例>
“このボタンを押しましょう!!”
これで、文字を変更したときのように、
実行をすれば、ボタンを配置したアプリが起動します

Android アプリ作成(画面レイアウト編)その2

ひきつづき Android プログラミングの勉強です
アプリの画面レイアウトには
XMLをいじる
もしくは
javaソースコードを改造する
のどちらかを使います
今回は、XMLをいじります
Eclipse の左側にある
Package Explorer を最大化し
プロジェクト名 > res > layout >
main.xml というファイルをダブルクリック
その main.xml の中に
android:text =”@string/hello”
という文があります
この意味は、res ディレクトリの中の
values の中にある string.xml を参照し
hello 属性の値を読み込む
ということになります
このことから
string.xml で表示する文字を管理
main.xml でどこに表示するか決定
Activity に反映
というのが文字表示の流れになっています
極端な話、
プロジェクトでできたアプリの文字列を変更したいなら
string.xml の中の
<string name=”hello”> Hello world testr Activity </string>
のタグの中の部分を
<string name=”hello”> アンドロイド実験です </string>
というよにタグの中を表示したい文字にするだけで変更可能です
あとはこれを保存し、実行すると変更が反映されます
また、アプリの名前を変更するには
<string name=”app_name”> test</string>
のタグの中のtest の部分を 好きなアプリ名に変更することで
アプリ名を変更できるようになります
たとえば、
<string name=”app_name”>実験アプリ</string>
とすると、アプリ名が実験アプリになります
このように、固く考えず
まずはソースの改造くらいから行うと
おもしろく開発できるようになっていくと思います