當前位置:首頁 » 安卓系統 » android腳本

android腳本

發布時間: 2022-04-16 08:17:43

1. android 中怎麼執行js腳本

android要執行腳本,只有通過本地的webview打開腳本頁面。

調用步驟

1、設置webview支持腳本

java">webSettings.setJavaScriptEnabled(true);

2、打開腳本頁面

mWebView.loadUrl("file:///android_asset/demo.html");//這里打開該app的asset目錄下的demo.html,裡面含有wave函數腳本

3、調用腳本

mWebView.loadUrl("javascript:wave()");//調用打開頁面中的wave函數

2. 安卓的腳本,不root是否可以使用

安卓的腳本,不root是無法正常使用的。手機ROOT就是獲取最高許可權,ROOT後的手機,配合360手機衛士可以實現卸載預置軟體、管理開機啟動項、控制每個APP的流量使用、修改游戲、控制廣告插件等多種功能。只有ROOT後的手機才能擁有完整的手機操作許可權。ROOT後的手機由於擁有完整的操作許可權,平時下載和更新軟體的時候更要注意,不要下載來歷不明的軟體,謹慎點擊未知的圖片和鏈接。ROOT後的手機保修相關問題,需要咨詢相關手機的廠商客服。因為不同的手機型號,不同的固件版本,ROOT方案完全不一樣,這邊以三星為例,其他手機雷同。
安卓的腳本root的步驟:
1、ROOT環境准備、備份數據;
1、 將手機連接到電腦的後置USB介面上,打開電腦版的360安全衛士-》手機助手;
2、 點擊手機助手的備份按鈕備份。該備份沒有備份您的照片和視頻,一般這些在外置SD卡上,推薦您直接從電腦上拷貝備份好;
3、 點擊鏈接下載ROOT工具odin3:http://dl.pconline.com.cn/download/170680.html
第二步:手工刷ROOT
1、 手機完全關機,音量下鍵+home鍵+開機鍵三個按鍵同時按動,當出現waming警告界面後鬆手;
2、 按動音量上,手機進入三星downloading挖煤模式後,手機插入電腦後置USB介面上;
3、 打開360手機助手,此時電腦將自動安裝驅動;
4、 打開剛才下載好的odin3工具,當工具的左側第一格下面有藍色標識後,驅動安裝完成;
5、 點擊PDA按鈕,載入對應的ROOT包後,點擊start按鈕;
6、 當軟體出現PASS後,手工ROOT完成,手機會自動重啟的;
7、 如果手機卡在開機三星的logo界面請多等待5分鍾;
8、 注意事項:查找對應的ROOT包。
(1) 不同品牌,不同型號的,不同固件版本的ROOT包完全不一致,請一定對照好,否則會導致手機無法開機,造成硬體損傷。
(2) 在刷ROOT包時,一定要保證手機正常連接電腦,如果不小心觸碰數據線導致連接中斷,手機會無法開機,造成硬體損傷。
(3) 由於ROOT包非官方發布,都是手機愛好者個人發布,或許由於編寫程序BUG等因素會導致手機無法啟動,在操作前,一定要備份好本機的數據。
(4) 如果您在刷ROOT中,odin3顯示fail!請一定及時聯系專家,不要在做過多的操作,否則會造成手機硬體的損壞。
(5) 如果您沒有相關手機型號的ROOT經驗,建議您先咨詢下人工專家。
第三步:開啟ROOT許可權
1、 手機正常重啟後,訪問http://shouji.360.cn/鏈接,下載安裝360手機衛士;
2、 在手機上打開360手機衛士-》安全防護-》超強模式-》打開超強模式-》立即開啟;
3、 在上述步驟中,如果彈出授權提示選項,點擊授權或同意按鈕;
4、 如果超強模式成功打開,手機ROOT成功完成,您可以使用超強模式裡面的所有的功能,進行預置軟體卸載、管理開機啟動項等;
5、 手機ROOT後,不要恢復出廠設置,不能點擊系統更新功能,否則ROOT會失效。

3. 怎麼讓Android系統或Android應用執行shell腳本

一、Android應用啟動服務執行腳本
1 如何寫服務和腳本
在android源碼根目錄下有/device/tegatech/tegav2/init.rc文件相信大家對這個文件都不陌生(如果不明白就仔細研讀下android啟動流程)。如果在該腳本文件中添加諸如以下服務:
service usblp_test /data/setip/init.usblpmod.sh
oneshot
disabled
註解:每個設備下都會有自己對應的init.rc,init.設備名.rc腳本文件。oneshot disabled向我們說明了在系統啟動的時候這個服務是不會自動啟動的。並且該服務的目的是執行/data/setip/init.usblpmod.sh腳本。腳本的內容你可以隨便寫,只要符合shell語法就可以了,比如腳本可以是簡單的設置eth0:
# ! /system/bin/sh //腳本的開頭必須這樣寫。
Ifconfig eth0 172.16.100.206 netmask 255.255.0.0 up//設置ip的命令
2、如何在應用中啟動服務
1)首先了解下在服務啟動的流程
1. 在你的應用中讓init.rc中添加的服務啟動起來。
首先了解下在服務啟動的流程:
在設備目錄下的init.c(切記並不是system/core/init/init.rc)
Main函數的for(;;)循環中有一個handle_property_set_fd(),函數:
for (i = 0; i < fd_count; i++) {
if (ufds[i].revents == POLLIN) {
if (ufds[i].fd == get_property_set_fd())
handle_property_set_fd();
else if (ufds[i].fd == get_keychord_fd())
handle_keychord();
else if (ufds[i].fd == get_signal_fd())
handle_signal();
}
}
這個函數的實現也在system/core/init目錄下,該函數中的check_control_perms(msg.value, cr.uid, cr.gid)函數就是檢查該uid是否有許可權啟動服務(msg.value就是你服務的名字),如果應用為root或system用戶則直接返回1.之後就是調用handle_control_message((char*) msg.name + 4, (char*) msg.value),該函數的參數就是去掉1.ctl.後的start和2.你服務的名字。這個函數的詳細內容:
void handle_control_message(const char *msg, const char *arg)
{
if (!strcmp(msg,"start")) {
msg_start(arg);
} else if (!strcmp(msg,"stop")) {
msg_stop(arg);
} else if (!strcmp(msg,"restart")) {
msg_stop(arg);
msg_start(arg);
} else {
ERROR("unknown control msg '%s'\n", msg);
}
}
匹配start後調用msg_start.服務就這樣起來了,我們的解決方案就是在檢查許可權的地方「下點功夫」,因為我們不確定uid,所以就讓check_control_perms這個函數不要檢查我們的uid,直接檢查我們服務的名字,看看這個函數:
static int check_control_perms(const char *name, unsigned int uid, unsigned int gid) {
int i;
if (uid == AID_SYSTEM || uid == AID_ROOT)
return 1;
/* Search the ACL */
for (i = 0; control_perms[i].service; i++) {
if (strcmp(control_perms[i].service, name) == 0) {
if ((uid && control_perms[i].uid == uid) ||
(gid && control_perms[i].gid == gid)) {
return 1;
}
}
}
return 0;
}
這個函數裡面是必須要檢查uid的,我們只要在for循環上寫上。
if(strcmp(「usblp_test」,name)==0) //usblp_test就是我們服務的名字。
return 1;
這樣做不會破壞android原本的結構,不會有什麼副作用。
init.c和init.rc都改好了,現在就可以編譯源碼了,編譯好了裝到機子開發板上就可以了。

4. 如何讓android啟動後自動運行一段腳本

1.修改啟動腳本init.rc在最後添加
#===============================add my shellscript
service sysinit /system/xbin/busybox run-parts /system/etc/init.d
oneshot
上面busybox工具路徑要根據自己的系統寫
2.在system/etc下創建init.d目錄,在此目錄下添加寫好的腳本去掉後綴.sh,添加可執行許可權
3.重啟ok

5. android 中如何去執行js腳本

android要執行腳本,只有通過本地的webview打開腳本頁面。
調用步驟

1、設置webview支持腳本
webSettings.setJavaScriptEnabled(true);

2、打開腳本頁面

mWebView.loadUrl("file:///android_asset/demo.html");//這里打開該app的asset目錄下的demo.html,裡面含有wave函數腳本

3、調用腳本

mWebView.loadUrl("javascript:wave()");//調用打開頁面中的wave函數

6. 如何讓android 開機自動啟動腳本

如果需要在Android開機時自動啟動應用程序,可以通過響應android.intent.action.BOOT_COMPLETED廣播消息來實現, Android系統啟動結束時,會發出 android.intent.action.BOOT_COMPLETED 消息。 具體步驟如下:1. 定義一個Broadcast Receiver ,比如:BootupReceiver

[java]
public class BootupReceiver extends BroadcastReceiver{

@Override
public void onReceive(Context context, Intent intent) {

//better delay some time.
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Intent i = new Intent(context, BootupDemoActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);

}

7. android怎麼實現按鍵腳本

程序經常需要調試,需要程序自動按鍵,或者某些繁瑣操作,比如游戲外掛,需要按鍵精靈來完成。
android 提供給開發者發送模擬按鍵的類Instrumentation:

public classInstrumentationextends Object

java.lang.Object
↳ android.app.Instrumentation
Known Direct

可以模擬發送很多事件(這些方法寫在thread類里,所以部分帶有thread的sleep方法):
發送back事件:
private void back()

{

inst.sendKeyDownUpSync(KeyEvent.KEYCODE_BACK);

}
復制代碼
發送enter事件:(在keyevent中有很多按鍵碼,該方法可以發送任何按鍵的事件)
private void enter() throws InterruptedException
復制代碼
{

inst.sendKeyDownUpSync(KeyEvent.KEYCODE_NUMPAD_ENTER);

sleep(500);

}
復制代碼
根據坐標點發送點擊事件:
private void click(int x ,int y) throws InterruptedException

{

inst.sendPointerSync(MotionEvent.obtain(SystemClock.uptimeMillis(),

<span style="white-space:pre"> </span>SystemClock.uptimeMillis(), MotionEvent.ACTION_DOWN, x, y, 0));

sleep(500);

inst.sendPointerSync(MotionEvent.obtain(SystemClock.uptimeMillis(),

SystemClock.uptimeMillis(), MotionEvent.ACTION_UP, x, y, 0));

}
復制代碼
根據坐標發送長按事件:
private void longClick(int x, int y) throws InterruptedException{

inst.sendPointerSync(MotionEvent.obtain(SystemClock.uptimeMillis(),

SystemClock.uptimeMillis(), MotionEvent.ACTION_DOWN, x, y, 0));

sleep(2000);

inst.sendPointerSync(MotionEvent.obtain(SystemClock.uptimeMillis(),

SystemClock.uptimeMillis(), MotionEvent.ACTION_UP, x, y, 0));

}

復制代碼
發送向下事件:
private void move() throws InterruptedException

{

inst.sendKeyDownUpSync(KeyEvent.KEYCODE_DPAD_DOWN);

sleep(500);

inst.sendKeyDownUpSync(KeyEvent.KEYCODE_DPAD_DOWN);

sleep(500);

}

8. android系統有沒有腳本語言

  • java目前還是主流,c,c++目前也只是能通過jni調用,不過谷哥未來有支持c,c++開發的動向,還有一些非主流的開發方式:如果僅是開發應用的話,perl,c#,flashair,HTML+css+js都是可以的,不過都不怎麼成熟。

  • HTML+css+js是屬於webAPP,網上也有一些開源的框架,例如Sencha,它可以支持跨平台,也有android的例子,有興趣的可以看看,flashair(flex)不屬於web應用,同樣也是跨平台的,但是需要用戶另外安裝運行環境。使用MonoforAndroid(原名:MonoDroid)可以讓開發人員使用VisualStudio來創建基於C#和.NET的應用程序,並且讓這些程序可運行在Android手機上。要在Android上運行perl,首先要讓Android支持Perl。所以要把環境搭好,先安裝SL4A(ScriptingLayerforAndriod),然後再安裝Perl插件,Perl腳本就能在Android系統上運行了

9. 如何讓Android系統或Android應用執行shell腳本

android系統執行shell腳本,需要首先確認用戶具有修改shell的許可權,使用 process來執行指令,如下代碼:

publicvoidexecShell(Stringcmd){
try{
//許可權設置
Processp=Runtime.getRuntime().exec("su");//開始執行shell腳本
//獲取輸出流
OutputStreamoutputStream=p.getOutputStream();
=newDataOutputStream(outputStream);
//將命令寫入
dataOutputStream.writeBytes(cmd);
//提交命令
dataOutputStream.flush();
//關閉流操作
dataOutputStream.close();
outputStream.close();
}
catch(Throwablet)
{
t.printStackTrace();
}
}
熱點內容
解壓到當前文件夾右鍵 發布:2024-04-26 03:57:08 瀏覽:979
html5android教程視頻下載 發布:2024-04-26 03:09:59 瀏覽:867
伺服器的描述是什麼 發布:2024-04-26 03:08:32 瀏覽:394
個人加密 發布:2024-04-26 03:01:23 瀏覽:521
linuxusbgadget 發布:2024-04-26 02:52:54 瀏覽:304
我的世界空島世界伺服器地址 發布:2024-04-26 01:39:08 瀏覽:248
尼爾機械紀元加密 發布:2024-04-26 01:37:11 瀏覽:868
在控制台輸出sql語句 發布:2024-04-26 01:08:12 瀏覽:432
動畫java 發布:2024-04-26 01:02:40 瀏覽:12
得力文件夾5302 發布:2024-04-26 00:21:32 瀏覽:91