Chạy các ứng dụng từ trình giả lập thiết bị đầu cuối [đã đóng]


8

Tôi có máy tính bảng Nexus 7 Jelly Bean đã root và bất cứ khi nào tôi cố chạy ứng dụng từ ứng dụng giả lập thiết bị đầu cuối sau khi chmod 777 và sử dụng cú pháp ("./applicationName"), tôi khẳng định rằng tôi không có quyền thực thi ngay cả khi tôi cấp quyền riêng tư siêu người dùng của tôi bằng cách sử dụng ("su"). Sau đó tôi đã thực hiện một nghiên cứu nhỏ và tôi đã học được rằng nếu bạn sao chép tệp vào thư mục (/ data / local / temp /), bạn sẽ có thể thực thi ứng dụng. Vì vậy, khi tôi thử rằng nó nói rằng tệp không tồn tại mặc dù nó hiển thị khi liệt kê nội dung thư mục bằng cách sử dụng ("ls")

Tôi không biết nên thực hiện các bước nào, nếu nó giúp tôi thử chạy (scp) dưới dạng thử nghiệm nhưng tôi muốn có thể chạy phiên bản được biên dịch tùy chỉnh của dns2tcp. Tôi biết rằng tôi có thể đã sử dụng các ứng dụng tốt hơn như một thế giới hello được biên dịch thiết bị tự nhiên nhưng tôi không thể chạm tay vào trình biên dịch C cho Android như gcc.

Cảm ơn vì lời khuyên


2
bạn có thể thêm một chút bảng điểm của những gì bạn đã làm? / sdcard được gắn với tính năng 'noexec' để ngăn các tệp thực thi được chạy. Bạn đã chỉ định đường dẫn đầy đủ với lần thử thứ hai (/ data / local / tmp / yourprogram) chưa?
ce4

@ ce4 Tôi đã thử những gì bạn đã đề cập trong phần thứ hai của bình luận của bạn. Đây là bản phiên âm: pastebin.com/RkuMHuBj EDIT: Yea tôi quên nhấn shift + enter :) my hehe
Andrei0427

Bạn đã thử chỉ định đường dẫn đầy đủ để thực hiện - ví dụ /data/local/tmp/scp? Và chắc chắn rằng scptập tin của bạn không có phần mở rộng tập tin khi được gọi mà không có bất kỳ?
Izzy

@ Tôi có, vâng. Có ai ở đây có thể chạy các ứng dụng C tùy chỉnh từ thiết bị đầu cuối trên thiết bị Android không?
Andrei0427

Nếu ứng dụng không được biên dịch cho Android, nó sẽ không hoạt động.
Matthew đọc

Câu trả lời:


3

hãy thử đặt shtrước lệnh của bạn, vd.:

sh ./scp

hoặc là

sh -c ./scp

Tôi đã nhận được một lỗi cú pháp khi chạy ứng dụng, tôi đoán nó đã xảy ra vì nó không được biên dịch cho máy tính bảng vì tôi đã tách nó ra khỏi điện thoại. Than ôi, điều này phải có nghĩa là nó hoạt động .. phải không?
Andrei0427

bạn đã nhận được lỗi gì?
EsOsO

lệnh đầu tiên chắc chắn sẽ không hoạt động (./scp không ở định dạng có thể được hiểu bởi shell), lệnh thứ hai là quá mức cần thiết (nó chỉ chạy ./scp trong một lớp con). Cả hai sẽ không sửa các quyền thực thi không phù hợp và / hoặc không tương thích khác.
ce4

2

Ứng dụng giả lập sẽ có thể chạy một ứng dụng khác từ thư mục riêng của nó. Thư mục đó được gọi là một cái gì đó như /data/data/com.super.emulator. Hãy thử đưa ra đường dẫn đầy đủ đến ứng dụng bạn muốn trong trình giả lập.

Nếu bạn muốn có một trình biên dịch cho Android, bạn có thể sử dụng NDK . Dễ dàng để có được, miễn phí để sử dụng.

Bạn cũng có thể đẩy tập tin của bạn /system/binqua adb ? Tôi không biết nếu bạn có được sự cho phép đó khi bạn root thiết bị của mình. Nhưng nếu đó là trường hợp, nó sẽ làm cho cuộc sống của bạn dễ dàng hơn nhiều.


1

Nhiều khả năng bạn không thể chạy chương trình vì các thư viện trên thiết bị bạn đã tách nó khỏi bị thiếu từ thiết bị bạn đã sao chép nó vào.

Vì mục tiêu cuối cùng của bạn là biên dịch một chương trình và chạy nó một cách tự nhiên trên điện thoại, tôi có thể đề nghị bạn sử dụng NDK của Android không? Tài liệu NDK bao gồm STANDALONE-TOOLCHAIN.HTMLgiải thích cách biên dịch chéo chương trình gốc để chạy trên thiết bị Android của bạn.


0

Nếu bạn đã root (tôi thấy bạn là ai), hãy sử dụng sulệnh và sau đó chạy tập lệnh gốc của bạn. Nếu vấn đề là quyền, điều này sẽ khắc phục nó. Và nếu bạn đang sử dụng tập lệnh shell, bạn có thể thêm dòng này vào đầu tập lệnh. bạn có thể phải kiểm tra cài đặt superSu của mình (hoặc bất kỳ ứng dụng siêu người dùng nào bạn có root) và đảm bảo trình giả lập thiết bị đầu cuối của bạn có quyền root.

Nếu bạn không được root (hoặc không thể chạy bằng root vì một số lý do), tôi khuyên bạn nên xem xét cách XBMC làm điều đó, vì tôi tin rằng nó có thể chạy các ứng dụng ở chế độ người dùng.

Chúc may mắn.

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.