Perl for android(SL4A) がXperia(android os 2.1;Eclair)実機でうごいた

androidでscriptを動かすSL4AXperiaのosがandroid1.6時は動かなかったけど,2.1で動くようになっていた

いずれも,2010/11/27時点.sl4aはsl4a_r3, perl for androidperl_r9

version

$^Vで調べた

v5.11.0

@INC

/data/data/com.googlecode.perlforandroid/files/perl/site_perl/5.10.0/arm-eabi-linux
/sdcard/com.googlecode.perlforandroid/extras/perl/site_perl/5.10.0
/data/data/com.googlecode.perlforandroid/files/perl/5.10.0/arm-eabi-linux
/data/data/com.googlecode.perlforandroid/files/perl/5.10.0
/sdcard/com.googlecode.perlforandroid/extras/perl/site_perl
.

xperiaで動いた

最初から入っているスクリプトtest.plが動く.gdataのテストはこけたけど他はok

API

リモートカメラ

動かしたのはリモートカメラ.id:naoya さんのコード(Scripting Layer for Android で Perl x Android - naoyaのはてなダイアリー)そのまんまで動く

モジュールは/sdcard/com.googlecode.perlforandroid/extras/perl/site_perlに,スクリプトは/sl4a/scripts/に配置

モジュールは,CGI.pm,CGI/*,FileHandle.pmをperlコアのディレクト*1から.cpanm -L extlib HTTP::Server::Simple::PSGIを使って出力したHTTP/*(./extlib/lib/perl5/HTTP/*)を配置

手順はさらに元記事(良いもの。悪いもの。: Pythonを使ってAndroid端末を5分でリモートカメラにする方法)のとおり.ただし,lapis25の環境ではspmodeで動かなかったので,無線LANで接続してstart server時にlocalを選択してlocalのアドレスでアクセスしたら動いた

APIも各種用意されているのでいくつか試してみたい

*1:perlbrewを使ってperl-5.10.1を入れてあったので~/perl5/perlbrew/perls/perl-5.10.1/lib/5.10.1/にあったものを.たぶんもっと新しいのでも大丈夫