2010/10/30

「うちの子どもの声が聞こえるアプリ」に格納した音声データをwavからmp3に変更しました。



「うちの子どもの声が聞こえるアプリ」
http://vivo-design.blogspot.com/2010/10/app-inventor-for-android_27.html

格納した音声形式がwavでは、サイズが大きいのでmp3に変更しようと思います。加工した音声データの保存時のファイル形式に、「Free Audio Editor 2010」ではmp3は選べませんでした。「Free Audio Editor 2010」は無償版のために、mp3形式が選べないだけで有償版であれば出来るようです。

しかし、wavをmp3に変換するだけなので、フリーソフトで対応出来そうです。

Efficient WMA MP3 Converter
http://www.wmamp3-converter.com/


を使って変換しました。


「うちの子どもの声が聞こえるアプリ」に格納していた6つのwavをmp3に変更すると、アプリのデータサイズが、6.18MBから







3.90MBに減りました。

アンドロイドアプリ「BeautyLab」顔写真からあなたの美人度を測定! を試してみました。試した中で一番美人だったのは・・・



アンドロイドアプリ「BeautyLab」を試してみました。

「BeautyLab」顔写真からあなたの美人度を測定!
http://androider.jp/?p=22520

 うちの下の子の画像を使ってみると、75点でした。
 では、美人といわれている人の画像を使ってみると、どうなるかと思い、「少女時代」のユナさんの写真を使ってみました。

この写真では、ウィンクをしているせいか、判定自体が出来ませんでした。

他にも、エラーの出る写真は沢山ありました。顔全体が画像に入っていないと、「Face not found(画像内に顔がありません)」 と言われることが多く、判定画面にさえ行きません。
 「少女時代」のユナさんの別の写真で試してみると、79.9点。80点の出る顔ってなかなか無いのでしょうか?

では、男性でやってみるとどうなるのか?菅直人首相の画像でやってみました。82.4点! 今回判定した中では、一番の美人顔でした。

2010/10/28

Androidで使用するアイコンをブラウザ上で作成できるサイトがありました。



Androidで使用するアイコンをブラウザ上で作成できるサイトがありました。

Android Asset Studio
http://android-ui-utils.googlecode.com/hg/asset-studio/dist/index.html

ただし、現在は、Google Chromeでしか動作しないようです。Google Chromeで操作をしました。画像編集ソフト、PhotoshopやFireworksを使えば、同じことは勿論出来ますが、こちらのほうが手軽です。


昨日、作った「子どもの声が聞こえるアプリ」のアイコンを「Android Asset Studio」で作ってみました。アイコンっぽいアイコンを使うと、アプリっぽく見えてきます。


2010/10/27

子どもの写真をクリックで、子どもの声がするアプリ(うちの家族だけが楽しいアプリ)を「App Inventor for Android」で作ってみました。



以前作成した、「画像をクリックすると、ニャーと鳴き声」がするだけの「App Inventor for Android」のチュートリアルで作成したアプリを基に、子どもの写真をクリックすると、子どもの声がするアプリを作ってみました。

App Inventor for Android のチュートリアルをやってみました。
http://vivo-design.blogspot.com/2010/10/app-inventor.html

子どもの声の面白い声があれば、楽しめるアプリが作れそうです。(うちの家族が楽しい・・・) 子どもにマイクで話をさせて録音をしてもよいのですが、自然な声での録音が難しそうなので、ビデオで撮影をしていた動画から、面白そうな音声だけを抜き出して使ってみます。
 
この動画の音声を抜き出します。この動画はデジカメで撮影したmovのファイルです。


音声の抜き出しには、下記の無料の音声編集ソフトを利用しました。

Free Audio Editor 2010
http://www.free-audio-editor.com/

有料版もありますが、今回の用途であれば、無料版で編集できます。
まず、メニューより「Import from Video」でmovファイルをmp3に変換します。mp3に変換して、「Free Audio Editor 2010」に読み込んだのが、この画面です。


次に、切り取りたい音声の部分だけを、ドラッグで選択します。そして、ツールの中にある「Crop」を使って、切り取りたい部分の音声だけにして、 保存「Save File As」をします。無料版の場合、保存時に、mp3のファイル形式は利用できません。「App Inventor for Android」に取り込めるファイル形式であればよいので、wavにて保存します。


後は、用意したボタン用の画像、音声データを「App Inventor for Android」にアップロードして、画面に配置します。

その後、Blocks Editorにて、ボタンクリックでの音声再生を関連付けるだけです。


うちの家族だけが楽しいアプリが出来ました。写真をクリックすると、「もーーーっ」とか「はーい!」とかしゃべります。

2010/10/25

Zope3 の bin/debugzope で、ルートフォルダとしてのroot変数が使えません



「Zope3入門篇」をやっています。Zope3でのデバックモードでのZopeの起動にて、「グローバルroot変数としてルートデータベースオブジェクトにアクセスできます。」とあるのですが、root自体の名前が解決されません。

>>> root
Traceback (most recent call last):
  File "", line 1, in ?
NameError: name 'root' is not defined


下記のサイトでは、rootでルートデータベースオブジェクトにアクセスできることを説明されています。

IPythonを使ってZope3デバッグ の 「Zopeのデバッグコンソールで使う」の項目

何が違うのでしょう?悩んでいます。

2010/10/24

android-scripting(SL4A)に、Ruby と Lua の実装を入れてみました。



android-scripting(SL4A)に、Ruby と Lua(ルア) の実装を入れてみました。Pythonの実装を入れる時に、他の実装が用意されているのが分かりました。他には、Perl と Rhino(ライノー)があります。

Lua(ルア)とRhino(ライノー)については、よく知らなかったのですが、調べてみると、気になるスクリプト言語でした。

Lua http://www.lua.org/
Rhino https://developer.mozilla.org/ja/Rhino

Ruby と Lua(ルア)をインストールした後、android-scripting(SL4A)を起動した様子。Pythonのアイコンが表示されるようになった理由が分かりました。他の言語との区別がすぐ付くためのアイコンでした。 Ruby と Lua(ルア)のアイコンが表示されています。
 Rubyでの「Hello Android」表示スクリプト
Luaでの「Hello Android」表示スクリプト

2010/10/23

6行で作れるAndroidのバーコードスキャナープログラムを試してみました。



android-scripting 「SL4A」上で、6行で作れるAndroidのバーコードスキャナープログラムを試してみました。android-scripting 「SL4A」のサイトにサンプルプログラムのリンクとして、下記のサイトがありました。

 Android barcode scanner in 6 lines of Python code

まず、ページの最初に表示されているプログラムを使ってみましたが、エラーになり正常に動作しません。ページの終わりの方にあるコメント内に正常に動作するものがありました。下記のソースです。
import android
droid = android.Android()
(id, result, error) = droid.scanBarcode()
isbn = int(result['extras']['SCAN_RESULT'])
url = 'http://books.google.com?q=%d' % isbn
droid.view(url)
 このプログラムを動作させて、書籍のバーコードを読み込み・・・
 ISBNコードを認識すると、
 










Googleブックスの該当ページが表示されます。

正常動作したので、これを基に、上記のプログラムを修正して、Amazon.co.jpでの書籍表示が出来るかどうかを試してみました。














Googleブックスのページを表示するプログラムとの違いは、Amazon.co.jpでの書籍表示のページでは、ISBNの10桁のものを使っていることです。Googleブックスは、ISBNの13桁を使用しています。「ISBN10桁」と「ISBNの13桁」の違い、変換プログラムについては、下記のサイトで教えていただきました。

 [Python]ISBN13をISBN10に変換

 出来上がったプログラムが以下のものです。
import android
droid = android.Android()
(id, result, error) = droid.scanBarcode() 

isbn13 = result['extras']['SCAN_RESULT']
isbn10 = isbn13[3:12]
check_digit = 0

for i in range(len(isbn10)):
    check_digit += int(isbn10[i]) * (10 - i)

check_digit = 11 - (check_digit % 11)

if check_digit == 10:
    check_digit = 'X'
elif check_digit == 11:
    check_digit = '0'
else:
    check_digit = str(check_digit)

isbn10 += check_digit

url = 'http://www.amazon.co.jp/gp/product/%s/' % isbn10
droid.startActivity('android.intent.action.VIEW', url)

動作確認をすると、Amazonでの該当書籍ページが表示されました。



















2010/10/22

android-scripting(SL4A)をインストールしてみました。



前回の投稿の流れで、android-scripting「SL4A」をインストールしてみました。

 android-scripting SL4A

のサイトに表示されているQRコードをHT-03Aのバーコードスキャナーで読み込んで、「sl4a_r3.apk」をインストールします。


その後、ダウンロードファイルの一覧より、android-scripting「SL4A」上で動作させるプログラミング言語を選んでインストールします。

python_for_android_r1.apk
python_r7.zip
python_scripts_r8.zip
python_extras_r8.zip

python_for_android_r1.apkをインストールすれば、
残りのファイルは自動でインストールされました。


以前よりインストールしていた「ASE」の環境は、残ったまま、別のアプリとして「SL4A」がインストールされます。アプリのアイコンは、同じものでした。















android-scripting「SL4A」を起動したところ、「ASE」の時には、ファイル名だけでの一覧表示でしたが、android-scripting「SL4A」では、ファイル名の先頭に、Pythonのアイコンが表示されています。

ファイル名をクリックすると、 「ASE」では、すぐに実行されていましたが、「何をするか?」が選べるダイアログが表示されます。










デバッグモードで実行したところ、エラーが発生すると、エラー内容を表示したところで、止めておいてくれます。
















 ソースの編集画面です。

次にサンプルアプリを使って、実際の動作を確認してみます。

2010/10/17

ASE(Android Scripting Environment)で作成したPythonスクリプトから、OAuth認証を経てTweet出来ました。



ASE(Android Scripting Environment)で作成したPythonスクリプトから、OAuth認証が出来なかった現象が解決しました。

参考にさせていただいた、下記のブログの記載
AndroidからPythonでTwitterに投稿する

Twitterの認証方法が変わったことにより、認証方法を変更したプログラムを作られていました。
OAuthを使ってAndroidからPythonでTwitterに投稿する

この記載どおりで動作したのですが、下記の部分だけ、記載どおりには動作をしませんでした。

OAuthによる認証フローの箇所、OAuth認証の暗証番号がブラウザで表示された後、1分後に暗証番号入力のダイアログが表示されるはずなのですが、表示されません。Pythonスクリプトの箇所で言うと、「time.sleep(60)」の次に行かないようです。「time.sleep(60)」をコメントアウトしたり、(60)の秒数を少なくしたりして、確認しましたが、現象は変わりませんでした。OAuth認証の暗証番号が表示されたブラウザで、戻るを2回押すと、暗証番号入力のダイアログが表示されていました。そこで、暗証番号を入力すると、正常に動作をしました。

参考にさせていただた「良いもの。悪いもの。」のブログでは、さらに、ASEのことを教えていただきました。
Android端末で青空プログラミング! SL4Aの導入からアプリケーションの作成・公開まで

「ASEはSL4A (Scripting Layer for Android)に変更され、機能がさらに進化している」そうで、Androidパッケージ(APK)の作成など出来るとのこと。大変参考になる記事をいつも、ありがとうございます。

ASE(Android Scripting Environment)で作成したアプリのキャプチャー



以前、2010/05/29に投稿した「Python-Twitterモジュールを利用したツイート」のAndroidのキャプチャーを撮りました。投稿した時には、まだAndroidの画面キャプチャー方法を知らなかったので、テキストのみでの説明でした。

 Python-Twitterモジュールを利用したツイート

 画面にそれぞれ別のAndroidアプリの開発方法で作成したアプリのアイコンを並べてみました。

App Inventor で作成したもの
Eclipse で作成したもの
ASE(Android Scripting Environment) で作成したもの

ASEで作成した「twitter_client」というアプリを起動します。

 Pythonのインタープリタが起動します。
 Pythonのスクリプトで記載した、ツイートするためのフォームがっ表示されます。
 ツイート内容を記載して、「OK」をクリック
 2010/05/29 の頃には、正常にツイートできていましたが、今日のツイートはエラーになりました。どうやらTwitterの認証が正しく出来ていないようです。Twitterの認証方法が変更されたので、以前のままでは、動作しないのでしょう。

2010/10/16

App Inventor for Android のチュートリアルをやってみました。「MakeQuiz and TakeQuiz (ネットワーク上のデータベースを通じて出題者と回答者が利用するクイズのアプリ)」



App Inventor for Android のチュートリアルをやってみました。「MakeQuiz and TakeQuiz (ネットワーク上のデータベースを通じて出題者と回答者が利用するクイズのアプリ)」

MakeQuiz and TakeQuiz

このチュートリアルでは、2つのアプリを作成します。
  • ネットワーク上のデータベースに、クイズの問題と回答をアップするアプリ
  • ネットワーク上のデータベースより、クイズの問題をダウンロードして、回答をするアプリ
ネットワーク上のデータベースを共有して、こんなアプリまで、簡単に作成できるApp Inventorは、すごいと思いました。

  

MakeQuiz(クイズの問題と解答をアップするアプリ)

Question に "japanese capital ?" を設定し
Answer に "tokyo" を設定して

「Submit」ボタンを押すと、その下に、設定されている問題と解答のリストが表示されます。

これで、クイズを出題する側の作業は終了です。








 TakeQuiz(クイズに解答をするアプリ)

表示される問題に解答をして、正解であれば、「correct」と表示されます。データベースに格納されている「問題と解答」は、アプリの初期化のタイミングでダウンロードされます。













使用するデータベースは、App Inventor for Android: Tiny WebDB Service というものが用意されており、「TinyWebDB」というプログラムのパーツを利用することにより、自動で下記のURLが設定されて利用できます。

App Inventor for Android: Tiny WebDB Service

IKEA神戸で買った「PYSSLA ビーズ」でピカチューを作ってみました。



先日のIKEA神戸で、「PYSSLA ビーズ」を買いました。

PYSSLA ビーズ


子供たちが楽しそうに遊んでいるので、それにつられて、ピカチューを作ってみました。
ピカチューの形にビーズを配置して、


アイロンをかけると、板のように固まります。





Androidアプリ開発のためのとても参考になる連載記事のあるサイト



「世界を目指せ!Androidアプリ開発入門」の連載記事を参考にAndroidアプリの開発を試していますが、ほかにも、Androidアプリ開発のためのとても参考になる連載記事がありました。

世界を目指せ!Androidアプリ開発入門

連載全体のおよそ半分まで進みました。




これで作れる! Androidのアプリケーション

 このサイトも導入から、アプリ公開までのチュートリアルを実践できます。「Androidアプリの開発環境であるEclipseの使い方を知る」の回では、説明用のキャプチャーも沢山用意されていて、Eclipse自体の使い方に疎い者にとっては、大変ありがたい記事でした。


速習! Androidアプリケーション開発

このサイトでは、実際の名刺管理アプリを作成するフローを通じて、必要な知識、手法が分かる構成になっています。Google Mapとの連携の説明もあります。


連載:組み込み開発のススメ 第3回 Androidによる開発

アクティビティの詳細な説明と、動画再生アプリ作成のチュートリアルが参考になります。




Androidアプリ開発に24時間で挑戦してみた

加速度センサーを使ったアプリを作成するまでの説明がとてもためになります。

2010/10/15

Androidアプリ開発入門「第5回 アクティビティの制御と明示的インテント」をやってみました。



複数のアクティビティの制御と明示的インテントの基礎についての内容です。

第5回 アクティビティの制御と明示的インテント

各項目がとても分かりやすく書かれていて、迷うことは、ほとんどないのですが、Eclipseでの挙動が記載どおりでないところがあり、ちょっとだけ調べました。

Androidの画面の指定のXMLを作成するのに、Eclipseに内蔵されているリソースエディタを使う場面。「[ファイル]メニューの[新規]の[その他]を選択します。」との記載がありましたが、[その他]が選択できない状態でした。Eclipse自体をほとんど触ったことがないので、選択できるようにするのは、簡単なことなのかも知れませんが、それが分かりませんでした。

しばらく悩んで、メニューバーに並んでいるものの中に、Android系のボタンが用意されていることに気づきました。その中のボタンが、Android XML Fileを作成するボタンでした。


もう1点、分からなかった箇所。AndroidManifest.xmlの編集時に、「SkeletonSubActivity」に登録した「Intent Filter」にアクションを設定するところ。「[Attributes for Action]で[Name]に「android.intent.action.MAIN」を選択します。」とありますが、選択肢の中には、「android.intent.action.MAIN」はありませんでした。

選択をせずに、「android.intent.action.MAIN」を貼り付ければ、正常に動作しましたが、本当はどういう操作をすればよかったのでしょうか?


ちょっと迷いましたが、アプリは正常動作をするところまで出来ました。

人気の投稿 (過去 30 日間)