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

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

Luarida v1.67Betaを公開しました

Luarida v1.67Betaを公開しました。少しのバグフィックスとHttp関連のコマンドの追加、及びZIP圧縮関連のコマンドの追加を行いました。また、実行中のプログラムのPathを取得するgetAppPath()コマンドも追加しました。直接のダウンロードはここから(Luarida v1.67Beta)。最新版は[Luarida最新版]カテゴリーを選んでください。

実行しているプログラムのPathを取得する

system.getAppPath()はLuaridaが起動したプログラムの絶対Pathを返します。

 --縦向きに変更
 system.setScreen(1)
 --内部グラフィック画面設定の変更
 w,h = canvas.getviewSize()
 canvas.setMainBmp( w, h )

 dialog( "アプリのPathの表示", "AppPath = "..system.getAppPath() )
 touch(3)
 system.exit()

httpコマンドの追加

httpのGETプロトコルは以前からサポートしていたのですが、POSTプロトコルにも対応しました。下記のコマンドが新たに追加されました。

  • http.post(POSTするURL) : POST先のURLを指定してPOSTします。
  • http.setPostFile(POSTするファイル名) : POSTするファイルを指定します。
  • http.addParam(パラメータ) : POSTするときのパラメータを指定します。パラメータは追加できます。
  • http.clrParam() : パラメータを消去します。
  • http.clrHeader() : addHeader()によって追加したヘッダファイルを消去します。
  • http.setContentType(POSTファイルのコンテントタイプ) : POSTファイルのContent-Typeをセットします。text/plain、image/jpegtext/xml、application/zip などです。
 --縦向きに変更
 system.setScreen(1)
 --内部グラフィック画面設定の変更
 w,h = canvas.getviewSize()
 canvas.setMainBmp( w, h )

 --アプリと同じフォルダににある画像ファイルをPOSTします。
 http.clrParam()
 http.clrHeader()

 http.setPostFile( system.getAppPath().."/img_1.jpg"  )
 http.setContentType( "image/jpeg" )
 http.addParam("func=upload")
 http.post( "http://aaa.bbb.ccc.com/"  )
 while( http.status()==0 )do	end

 dialog( "POST処理の終了", "img_1.jpgをPOSTしました" )
 system.exit()	


ファイルをPOSTする必要が無くPOSTプロトコルのみ発行したい場合は、setPostFileを指定せずにPOSTすればOKです。

 http.clrParam()
 http.clrHeader()

 http.addParam("ccc=0")
 http.addParam("bbb=10")
 http.post( "http://aaa.bbb.ccc.com/"  )
 while( http.status()==0 )do	end

 dialog( "POST処理の終了", "http://aaa.bbb.ccc.com/?ccc=0&bbb=10 をPOSTしました" )
 system.exit()	

zipコマンドの追加

複数のファイルを圧縮するzipコマンドを追加しました。

  • zip.status() : zip圧縮処理の結果を取得します。
  • zip.exec(zipファイル名) : 圧縮ファイル名をフルパスで指定します。
  • zip.addFile(圧縮するファイル名) : 圧縮するファイルをフルパスで指定します。ファイルは追加して指定できます。
  • zip.clrFile() : 指定した圧縮ファイルを全てクリアします。

以下にzipしたファイルをPOSTするサンプルプログラムを書いておきます。

 --縦向きに変更
 system.setScreen(1)
 --内部グラフィック画面設定の変更
 w,h = canvas.getviewSize()
 canvas.setMainBmp( w, h )

 --ファイルを圧縮します
 zip.clrFile()
 zip.addFile( system.getAppPath().."/exitsample.lua"  )
 zip.addFile( system.getAppPath().."/graphicsample.lua"  )
 zip.addFile( system.getAppPath().."/hajimeni.lua"  )
 zip.addFile( system.getAppPath().."/luarida.lua"  )
 zip.addFile( system.getAppPath().."/textSample.lua"  )
 zip.addFile( system.getAppPath().."/textinput.lua"  )
 zip.addFile( system.getAppPath().."/touchsample.lua"  )

 zip.exec( system.getAppPath().."/luaridasample.zip"  )
 while( zip.status()==0 )do	end

 dialog( "zip圧縮の終了", system.getAppPath().."/luaridasample.zip" )

 http.clrHeader()
 http.clrParam()

 http.setPostFile( system.getAppPath().."/luaridasample.zip"  )
 http.setContentType( "application/zip" )
 http.addParam("func=upload")
 http.post( "http://aaa.bbb.ccc.com/"  )
 while( http.status()==0 )do  end

 dialog( "POST処理の終了", "luaridasample.zip をPOSTしました" )

以上です。