コンピュータを楽しもう!!

今、自分が面白くていろいろやってみたことを書き綴りたいと思います。連絡先はtarosa.yでgmail.comです。

ドロクリで自作プログラムを公開しよう

Luaridaで作ったプログラムは個人で使うには便利でいいのですが、それを誰かに公開することが中々難しいところがありました。それはAndroidはapkというパッケージにしないとマーケットなどに公開できないし、Androidのアプリインストールもapkからインストールするという作法によるものです。
Luaridaを公開したときから、ずっと、スクリプトのうまい公開方法は無いものかと考えていまして、解があるとすれば、スクリプトをapkにしてくれるWebサービスだろうと思っていました。

ただ、自分ではwebサーバプログラムを作る技術も無く、どこかでそんなサービスを行ってくれないかなぁと他力本願なことを思っていたのですが、今年のABCのときにお話したDOROKURIを運営しているタオソフトウェア株式会社さんが、「面白そうだからやってみよう」と興味を示していただき、あっという間にdoroLuaridaが出来上がりました。タオソフトウェアさん、仕事速すぎです。

ドロルアリダ(doroLuarida)の特徴

前置きが長かったですが、doroLuaridaとはドロクリ(DOROKURI)のサービスの1つで、Luaridaのプログラムをapkパッケージ化して公開できるサービスです。doroLuaridaを使うことにより、友達と簡単にアプリをやり取りすることができます。以下にdoroLuaridaの特徴を書き出します。

  • Luaridaプログラムのapk化し、ダウンロードできる(無料)。
  • apkをDOROKURIサーバ上で一般公開できる(無料)。
  • apkを非公開にして自分、またはサークルなどの仲間内で共有できる(無料)。
  • アンドロイドマーケットに公開できる正規apkも作成できる(有料:1000円)。
  • 正規apkはアンドロイドマーケットで有料アプリとして登録もできる。

以上のような特徴を持っています。

欠点も上げておきます。

  • 無料のapkの場合パッケージ名が同じになる。

これのなにが欠点か説明しますと、doroLuaridaから新規にダウンロードしたアプリをインストールする前に、古いdoroLuaridaアプリをアンインストールする必要があるということです。doroLuaridaアプリとして共存できないのです。
これでは、せっかくLuaridaアプリをダウンロードしても使えません。
しかし、この欠点は克服できます。Luaridaはアプリのインストール時に、SDカードメモリにプログラムを展開しているので、消えないでちゃんと残っています。これらを実行できるアプリを作ってしまえばこの問題は無くなります。近いうちに公開したいと思います。

自作アプリの公開方法

Luaridaの自作アプリ公開方法について簡単に書きたいと思います。せっかくなのでPCを使わずにAndroidだけでdoroLuaridaに登録する方法を説明したいと思いま・・・思ったのですが、XPERIAFirefoxが落ちてうまく行きませんでした。
ZIPファイルを作るところまで、Androidを使う手順を説明したいと思います。

先ず、とりあえずアップロードするアプリを作ります。以前作った最小二乗近似計算を行うプログラムを手直ししてみました。ソースリストは省きます。ドロクリに登録したので、ダウンロードするとソースは手に入ります。
luaファイル名は leastsquare.luaです。doroLuaridaに登録するためには、ZIPファイルに圧縮する必要があります。そこで、leastsquare.luaをZIP圧縮するプログラムを書きます。

------------------------------------------
-- 指定ファイルをZIP圧縮します
------------------------------------------
 zip.addFile( system.getAppPath().."/leastsquare.lua" )
 zip.exec( system.getAppPath().."/leastsquare.zip"  )
 while(zip.status()==0)do end
 if( zip.status()==1 )then
   dialog( "ZIP結果", system.getAppPath().."/leastsquare.zipを生成しました", 1 )
 else
   dialog( "ZIP結果", system.getAppPath().."/leastsquare.zipの生成に失敗しました", 1 )
 end
 El_Psy_Congroo() --エル・プサイ・コングルゥ

上記プログラムは、leastsquare.luaを圧縮して、leastsquare.zipを作ります。

残念ながらここからPCを使います

先ず、生成したZIPファイルをPCに持ってくる必要があります。AndroidからPCにファイルを持ってくる方法はいくつか有りますが、私はDropboxを愛用しています。アストロ(ASTRO)というファイルマーネジャアプリを使って、SDカードのluaridaフォルダに入ると、先に作成したleastsquare.zipファイルが箱アイコンで表示されています。これを長押しするとファイル送信モードになります。

ファイル送信画面には、Dropboxアイコンが出ているので、これを選んで送信してやると、簡単にPCにファイルを持ってこれます。

ドロクリに登録

ドロクリにつなげるとテンプレートアプリ一覧の中にdoroLuaridaがあります。

doroLuaridaを選択するとアプリの登録ページになります。ユーザを作成してログインしていた場合は、この画面に公開・非公開の選択が出てきます。今はログインしていないので、全て公開される形でapkが生成されます。

イコン画像は空欄にしてデフォルトの画像を使うことにし、ログインして「最小二乗近似計算」アプリを登録してみました。

ログインすると個別画面になるので、下記のような画面が出ます。公開しているので、みんなのアプリのところにも、下記のように出てきます。

これで、登録作業は終わり、自作アプリが公開されました。

Androidにインストール

doroLuaridaへの登録は以上の終わりですが、Androidのブラウザからアクセスして登録した最小二乗近似計算アプリをダウンロードしてインストールしてみました。

doroLuaridaのアイコンと共に最小二乗近似計算アプリがインストールされました。アイコンをタップするとSDカードに展開され、自動的にLuaridaが走ります。以下は最小二乗近似のアプリ紹介画面です。


起動すると何次曲線近似をするか指定します。


次に、データをX,Yの形式で順次打ち込みます。キャンセルすると入力が終わります。


近似計算結果が表示されます。例が悪かったですね。3次の近似なのにデータを4つしか入れなかったので、近似じゃなくなってしまいました。相関係数も1.0です。


次第に脱線したので、最後に話しを元にもどしますと、doroLuaridaを使うと、自作スクリプトをapk公開できます。また、公開しているdoroLuaridaアプリは、ソースの形で公開していれば、誰でも見ることができ、いろいろと勉強にもなると思います。