手機(jī)執(zhí)行l(wèi)inux命令 安卓手機(jī) linux命令

android中執(zhí)行l(wèi)inux命令 的疑問,該怎么處理

應(yīng)該是權(quán)限的問題,當(dāng)然可以在Mainfest里把相關(guān)網(wǎng)絡(luò)操作的權(quán)限加上試試,如果不行用JNI做,再不行就說明ifconfig需要root權(quán)限了

我們提供的服務(wù)有:網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、紹興ssl等。為上1000家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的紹興網(wǎng)站制作公司

安卓不是Linux系統(tǒng)么?請(qǐng)問如何在手機(jī)中執(zhí)行l(wèi)inux命令,如ls、vi之類的?謝謝!

安卓可不是LINUX,是谷歌支持發(fā)展起來的獨(dú)立操作系統(tǒng)。

雖然采用了Linux內(nèi)核,但沒有本地窗口,也不支持那些Linux的基礎(chǔ)應(yīng)用。

在linux 上做的事,在安卓手機(jī)的命令行上也能做嗎?

不能,雖然兩者都是基于同一內(nèi)核開發(fā)的產(chǎn)品,但是兩者經(jīng)過了后期開發(fā),兩者為了達(dá)到一些應(yīng)用都做了優(yōu)化、改動(dòng),所以在linux 上能做的事情,在安卓那里就不能做,不是說一定不能,這個(gè)是可以通過一些小的應(yīng)用來實(shí)現(xiàn)一些的(個(gè)人見解)

如何在APK程序里執(zhí)行l(wèi)inux命令

Android的底層是Linux內(nèi)核,因此在shell環(huán)境下可以運(yùn)行Linux命令,尤其是經(jīng)過root處理的android系統(tǒng),基本上可以通過調(diào)用Linux命令完全控制手機(jī),下面的RootCmd.java代碼可以實(shí)現(xiàn)運(yùn)行Linux外部命令。

package?my.android.code;

import?android.os.Environment;

import?dalvik.annotation.Signature;

import?java.io.BufferedReader;

import?java.io.DataInputStream;

import?java.io.DataOutputStream;

import?java.io.File;

import?java.io.FileReader;

import?java.io.InputStream;

import?java.io.OutputStream;

import?java.util.Vector;

public?final?class?RootCmd

{

//執(zhí)行l(wèi)inux命令并且輸出結(jié)果

protected?static?Vector?execRootCmd(String?paramString)

{

Vector?localVector?=?new?Vector();

try

{

Process?localProcess?=?Runtime.getRuntime().exec("su?");//經(jīng)過Root處理的android系統(tǒng)即有su命令

OutputStream?localOutputStream?=?localProcess.getOutputStream();

DataOutputStream?localDataOutputStream?=?new?DataOutputStream(localOutputStream);

InputStream?localInputStream?=?localProcess.getInputStream();

DataInputStream?localDataInputStream?=?new?DataInputStream(localInputStream);

String?str1?=?String.valueOf(paramString);

String?str2?=?str1?+?"\n";

localDataOutputStream.writeBytes(str2);

localDataOutputStream.flush();

String?str3?=?localDataInputStream.readLine();

localVector.add(str3);

localDataOutputStream.writeBytes("exit\n");

localDataOutputStream.flush();

localProcess.waitFor();

return?localVector;

}

catch?(Exception?localException)

{

localException.printStackTrace();

}

}

//執(zhí)行l(wèi)inux命令但不關(guān)注結(jié)果輸出

protected?static?int?execRootCmdSilent(String?paramString)

{

try

{

Process?localProcess?=?Runtime.getRuntime().exec("su");

Object?localObject?=?localProcess.getOutputStream();

DataOutputStream?localDataOutputStream?=?new?DataOutputStream((OutputStream)localObject);

String?str?=?String.valueOf(paramString);

localObject?=?str?+?"\n";

localDataOutputStream.writeBytes((String)localObject);

localDataOutputStream.flush();

localDataOutputStream.writeBytes("exit\n");

localDataOutputStream.flush();

localProcess.waitFor();

localObject?=?localProcess.exitValue();

return?localObject;

}

catch?(Exception?localException)

{

localException.printStackTrace();

}

}

//判斷機(jī)器Android是否已經(jīng)root,即是否獲取root權(quán)限

protected?static?boolean?haveRoot()

{

int?i?=?execRootCmdSilent("echo?test");?//通過執(zhí)行測(cè)試命令來檢測(cè)

if?(i?!=?-1)??return?true;

retrun?false;

}

}

我想學(xué)習(xí)linux,但是不想在電腦上裝一個(gè)linux系統(tǒng),能否用我的安卓終端當(dāng)做系統(tǒng),去執(zhí)行一些linux命令?

可以,一些終端類名稱的,root后,busybox更好,但是在手機(jī)上輸入命令會(huì)讓人想死的。而且,命令是簡版的,不全。

可以裝虛擬機(jī)軟件,在虛擬機(jī)里面裝linux,隨便整都沒事,包括格式化分區(qū)

網(wǎng)站題目:手機(jī)執(zhí)行l(wèi)inux命令 安卓手機(jī) linux命令
當(dāng)前地址:http://muchs.cn/article38/hjeopp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、網(wǎng)站收錄、網(wǎng)站維護(hù)品牌網(wǎng)站設(shè)計(jì)、虛擬主機(jī)移動(dòng)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司