Tôi có thể cài đặt Ruby và Ruby on Rails trên Android không?


8

Nhận thức được rằng đây là một chút tinh thần, nhưng tôi có thể cài đặt Ruby trên Galaxy S4 chạy Jelly Bean 4.2 không? Bảng điều khiển nơi tôi có thể cài đặt đá quý, tuyến cào và chạy máy chủ Rails và duyệt đến ứng dụng của mình bằng cách đưa 0.0.0.0.3000 vào Chrome?

Sẽ là tuyệt vời để thử nghiệm một chút ý tưởng và khái niệm tôi có khi trên đường đi!

Nhận thức được rằng Android không phải là UNIX, nhưng Chúa ơi nếu họ có thể cài đặt nó trên Windows, họ có thể cài đặt nó ở bất cứ đâu!


Bạn có một số câu trả lời hay dưới đây, lý do nào khiến bạn không ủng hộ chúng?
Siddharth

Câu trả lời:


3

Môi trường Scripting Android cho biết sẽ lên kế hoạch cho Ruby . Có thể đáng để kiểm tra xem họ đã đi được bao xa; ít nhất họ được gắn thẻ "JRuby" tại Google Code. Theo trang dự án của họ :

Các tập lệnh có thể được chạy tương tác trong một thiết bị đầu cuối, trong nền hoặc thông qua Locale. Python, Perl, JRuby, Lua, BeanShell, JavaScript, Tcl và shell hiện đang được hỗ trợ và chúng tôi đang lên kế hoạch bổ sung thêm.

Nhưng hãy lưu ý:

SL4A được thiết kế cho các nhà phát triển và là phần mềm chất lượng alpha.

Một bài viết thú vị về chủ đề này mà bạn có thể muốn đọc là Hacking Android trong kỳ nghỉ . Nó mô tả một nỗ lực (thành công) để thiết lập và sử dụng SL4A được sử dụng với ao Ruby.


6

điều này có thể thực hiện được

  1. Biên dịch Ruby và Nodejs cho Android
  2. Cài đặt trên thiết bị và định cấu hình với id / c ++ (Bạn có thể sử dụng C4droid, CCTools, Terminal IDE .... để cài đặt các mô-đun mở rộng trên / / ++)
  3. Cài đặt đường ray ($ gem cài đặt đường ray)

ví dụ: (Bấm vào hình để phóng to)
Ảnh chụp màn hình 1 Ảnh chụp màn hình 2 Ảnh chụp màn hình 2


3

Đối với ruby, bạn có thể thử Termux .

Có pin đi kèm. Bạn có thể tưởng tượng một máy tính bỏ túi mạnh mẽ nhưng thanh lịch hơn một bảng điều khiển python hỗ trợ đọc không? Các phiên bản cập nhật của perl, python, ruby ​​và node.js đều có sẵn.


0

Về lý thuyết, có bạn có thể làm điều này, nhưng sẽ có một số hạn chế đáng kể. Bạn gần như chắc chắn sẽ cần một thiết bị Android đã root .

Chẳng hạn, bạn sẽ không thể làm cho gem install anythingnó hoạt động được. Vấn đề là, điện thoại quá giới hạn tài nguyên để chạy trình biên dịch, vì vậy bạn không thể biên dịch Ruby hoặc bất kỳ gem nào cần thư viện riêng.

Vì vậy, cách đầu tiên tôi muốn nói đến là biên dịch chéo ruby ​​và RubyGems với NDK của Android và sau đó tải chúng lên thiết bị. Tại thời điểm này bạn đã có rubygemvà có thể bắt đầu thử nghiệm.


0

Trên thực tế, tôi đã sửa đổi CyanogenMod để tạo trống "/ bin, / lib, / usr, / var, / svr, / home, / media, v.v." và sau đó sửa đổi "$ {source_root} / system / core / include / private /android_filesystem_config.h "để bao gồm các quy tắc cho các thư mục và sau đó sửa đổi sdcard bên ngoài của tôi để nó không gắn kết với cầu chì hoặc với tập bit dính (nó sẽ đặt quyền sở hữu: sdcard_rw cho tất cả các tệp bên trong) và sau khi khởi động tôi đã chạy một tập lệnh gắn các thư mục gốc của nhánh Linux trên sdcard bên ngoài vào các phiên bản trống trong thư mục gốc của Android. Phiên bản nhúng của glibc đã được sử dụng với hình ảnh chroot Kali Linux mà tôi đã tạo, nhưng nó không có ruby ​​hoặc metasploit. Vì vậy, tôi đã làm theo một số hướng dẫn về việc biên dịch ruby ​​1.9.3 với svn hoặc một cái gì đó và sau đó sử dụng nó để cài đặt metasploit, điều duy nhất là postgresql đã không ' T hoạt động vì ổ cắm và tạo tệp rất nhạy cảm với quyền và ổ cắm có thể đã được tham gia, do đó, không có cơ sở dữ liệu postgres nào, vẫn chưa thử kết nối với db trên máy chủ khác. Apache2 hoạt động, tôi đã khởi động toàn bộ /etc/init.d/apache2 và viola, "Nó hoạt động!" bạn biết rằng nếu bạn đã nhìn thấy nó.

Vì vậy, trong ngắn hạn, vâng, bạn có thể biên dịch ruby ​​và nhiều chương trình khác trên Android, glibc chỉ cần có sẵn, tức là thư mục / lib và nội dung trên Linux.

Và như một lưu ý phụ, tôi đã sử dụng Galaxy S III Sprint với 2GB RAM. Python hoạt động rất tốt, tôi mới bắt đầu thử nghiệm các socket Unix với python, chúng đã kết nối trong / sdcard nhưng tôi cần tìm hiểu thêm về các chính sách bảo mật của Android về socket và tạo cơ sở dữ liệu trước khi tôi chuyển sang sử dụng metasploit và làm việc với cơ sở dữ liệu hoạt động trên Android + glibc.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.