Más contenido relacionado La actualidad más candente (20) Similar a Plack on SL4A in Yokohama.pm #8 (20) Plack on SL4A in Yokohama.pm #82. What's SL4A?
• Scripting Layer for Android
• Python, Perl, JRuby, Lua, BeanShell, JavaScript, Tcl, and shell
are currently supported
• Access to UI, Camera, Sensors on Android
• Shibuya.pm #14
http://d.hatena.ne.jp/naoya/20100930/1285868397
•
http://advent.perl.kr/2010-12-21.html
4. SL4A installation
• Android SDK apk
http://code.google.com/p/android-scripting/
% adb install sl4a_r4.apk
2546 KB/s (858471 bytes in 0.329s)
pkg: /data/local/tmp/sl4a_r4.apk
Success
14. Directory structure
• @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
.
•
/sdcard/sl4a/scripts
15. Plack installation
• Android SD PC
Plack
DST=/mnt/sdcard/sl4a/scripts
cpanm -l $DST/perl5
--reinstall
-qfn
CGI CGI::Util
HTTP::Date Time::Local
URI::Escape
Plack::Builder Plack::App::Directory
HTTP::Server::Simple::CGI
HTTP::Server::Simple::PSGI
HTTP::Message HTTP::Body
Hash::MultiValue
16. Plack installation(con’t)
mkdir -p $DST/lib/perl5/File/Spec
cp `perldoc -l File::Spec::Unix` $DST/lib/perl5/File/Spec
cp `perldoc -l integer` $DST/lib/perl5
cp `perldoc -l parent` $DST/lib/perl5
cp `perldoc -l DirHandle` $DST/lib/perl5
cp `perldoc -l FileHandle` $DST/lib/perl5
17. Script using Plack
use strict;
use lib '/sdcard/sl4a/scripts/perl5/lib/perl5';
use Android;
use Plack::Builder;
use Plack::App::Directory;
use HTTP::Server::Simple::PSGI;
• my $droid
Plack = Android->new;
my $app = builder {
mount "/" => Plack::App::Directory->new(root =>
'/sdcard');
};
my $server = HTTP::Server::Simple::PSGI->new(8080);
$server->app($app);
$server->run;
Notas del editor \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n