Hello World!2012年01月26日 00:02

Hello World!
Hello World!


サンプルプログラムを動かす。

とりあえず、覚えたばかりの仮想端末キャプチャ第2弾!。コピペをする手間を惜しんで、そのまんま実行してみた。ノートパッドというやつである。

(エクリプスへの呼び出し方:この次のページに、サンプルプログラムの一覧がある)
http://thinkit.co.jp/article/1205/1?page=0,1

さらに、悪乗りして、バイナリコードをコピペして、実機(レグザフォンIS04Ver.2.2.2)へインストール。このアプリは困る。初期画面が真っ黒だ。このあたりに、イジりがいがある。ソースコードが見えているので、これをいじってビルドすれば、オリジナルのメモ帳が出来るかもしれない。

でも、どうやってビルドするかは、皆目見当がつかない。

しかし、いろいろ調べてみると、どうも自動でビルドされているらしい。そういう設定なのか?。

(そのようですな)
http://www.myeclipseide.jp/blog/2009/02/eclipse-build.html

ぬぬ、知らない間に出来ているとは、怪しい奴!。どれどれ、と、メニューからプロジェクトを確認すると、ビルドオートマティカリーにチェックがついていやがる。

まあ、いい。

で、ソースコードを読んだが(眺めたって言えば?)、起動画面の背景色を書いた場所が見つからない。カプセル化されているのかもしれない。エディタのファイルの中に、行線の色がカラーコードで書いてあったので、紺色から赤に変えてみる。

仮想端末の方になかなか反映されない。強硬手段で、仮想端末にインストールされているノートパッドアプリをアンインストールして、実行したら、ちゃんと赤線になった。もちろん、実機でもapkファイルのコピペでちゃんと色が変わる。

なるほどね!。どうやら、ファイルの実行時に自動生成(ビルド)するようだ。最近のツールはお節介だなあ。キャプチャし直した。赤線を景気良く4本引いておく。

今日は、ここまでにしよう。

生中継!2012年01月26日 23:48

Hello Andoroid!
Hello Andoroid!


今日は、生中継(風?)でアンドロイドの勉強をお送りする。

まず、今日の目標。

(簡易ブラウザの作成)
http://thinkit.co.jp/article/1207/1

え?、ブラウザーって、あのネツケとかIEとかファイアフォックスとかの、あれですか?。

イェース!。

ご心配なく、ソースコードをコピペしてビルドするだけ(しかも自動で!)。パクリの極地ですなあ。お習字で、先生のお手本を複写機でコピーして展覧会に出すようなもんです。ズルです。手抜きです。軟弱です。根性なしです・・・。

では、開始!。

まずは、エクリプスを起動します。

で、新しいプロジェクトを作成します。ここまではOK!。順調です。楽勝です。調子に乗っていると、画面定義のXMLファイルをオープンで開いたときに、面食らいます。

これって、なに?、ということになります。なにせ、解説は2年前の環境で、最新の環境へ翻訳しながらのお勉強です。

気を取り直して、オープンウィズ>テキストエディタで開いて、やっと定義を記述した「文字列」(まあ、XMLですから)にお目にかかります。

オープンウィズ>アンドロイド・カラー・エディタの方が見やすいので、これで行きます(だんだん、環境に慣れてくる)。

この先で、またつまづきます。

MyWebView.javaを開いて、赤字の部分を追加すると、エラーの表示。

(対策は、これか?)
http://www.atmarkit.co.jp/fsmart/articles/android02/android02_2.html#hosoku20110923

しかし、エラーは消えず。ジャバエディターはエラー表示(波線)のところにポインターを持っていくと、解決方法のヒントがポップアップしてくれる。

なんだ、インポートするウェッブキットが足りないだけじゃん!。

解説ページは、追加部分だけ表示しているので、わからなかったわけ(プログラマーの常識は、ドしろうとの非常識!)。

2個インポートして、エラー表示は消滅。ヤターッ!、と喜ぶのはまだ早い。

解説の中の「マニフェスト・ファイル」というのが、よくわからん。最近政権政党が、野党に転落した元政権政党の親玉に、「マニュフェスト違反はケシカラン!」とやられているようだが、そのマニュフェストとは違うらしいことくらいは、サルでもわかる。

しかし、このままコンパイルしたのでは、通信ができなくなるらしい。通信ができないブラウザーなんて、ただのごみだあ!。

Eclipseの左側ペイン(Package Explorer)を見ると、下の方に「アンドロイドマニュフェスト」というXMLファイルがある。これを、カラーエディターで開くと、おお!、解説とおんなじ記述があるじゃん。

で、パーミッション・インターネットを追加して、デバッグ、ビルドしたのが、画面のブラウザーである。

実機の方には、自動でインストールされている。このあたりは、USBケーブルでつないだまま(充電中なので)、実行する際にインストールされているようだ。

ちょっと、やばいかも!。

エミュレーター(仮想端末)からも、ちゃんとインターネット検索ができる。画像の表示もOK。

きょうは、ソースコードの追加をコピペで行なっただけなのだが、念のため、3つのファイルの内容を書き出しておく。

<MyWebView/res/layout/main.xml>

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<WebView
android:id="@+id/main_webview"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
</LinearLayout>

<MyWebView/src/com.example.mywebview/MyWebView.java>

package com.example.mywebview;

import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class MyWebView extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

WebView webView = (WebView)findViewById(R.id.main_webview);
webView.setWebViewClient(new WebViewClient());
webView.loadUrl("http://google.co.jp");

}
}

<MyWebView/AndroidManifest.xml>

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<WebView
android:id="@+id/main_webview"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
</LinearLayout>

今日の目標はここまでだ。毎日、少しずつ前進である(コピペの腕が・・・)。