① 如何開發webkit js插件
開發一個完整app需要掌握哪些知識
1、前期需求規劃與信息——你需要制定出一個完整的需求文檔,功能文檔,流程圖,時序圖。
2、交互襲肢缺設計、UI設計——設計出基本且完善的原型圖和app基礎的交互設計效果,之後再根據這些設計出完整的UI界面並學會切圖,一些需要做自適應的素材圖片需要做點9patch。 這里還需要你懂得px,pt和dp之間的換算,屏幕密度的換算和相互之間的系數,以便你的app能完美適應不同解析度設備。其中交互設計需要你拍辯懂得很多人機操作的技巧經驗,掌握Axure等交互工具的使用,UI設計需要你掌握Photoshop和Illustrator等飢襲操作。
3、使用ADT之類的開發環境進行app軟體開發,你最基本的也得掌握java語言,熟悉android環境和機制。
4、如果不是單機版的app,需要用到伺服器,那你還得掌握WebService相關知識和開發語
言,常用的有ASP.Net,PHP,JSP等。
5、熟悉並能開發資料庫。
6、某些功能需要做演算法,這還需要一定得專業知識,尤其是數學基礎。
7、熟悉API介面開發,這里包括你自行開發API的能力以及調用第三方API的經驗。
8、熟悉TCP/IP,socket等網路協議和相關知識。
9、熟練掌握App發布的流程,真機調試技巧,證書,打包,上架。 App開發其實不一定適合一個人搞,太費勁,除非是一個單機版的小應用,或者利用現成的app開發簡單的第三方應用,否則還是讓一個團隊來完成各自擅長的領域。
② 基於webkit的js擴展如何實現要求在不改動webkit源碼的情況下~~ 求高手指點!
請參考 http://blog.csdn.net/sdy1978/article/details/4243480 中有講!不過,這樣不能擴展原來沒有實現的功能
③ 在android中怎樣調用本地js文件里的方法並得到返回值
在android中調用本地js文件里的方法並得到返回值其方法如下:
Android中內置了WebKit模塊,而該模塊的Java層視圖類就是WebView,所有需要使用Web瀏覽器功能的Android都需要創建該視圖類對象顯示和處理請求的網路資源。目前WebKit支持Http、Https、Ftp和JavaScript請求。下面是在Android中調用JavaScript方法以及如何在js中調用本地方法。
1、在Assets下放一個簡單的html文件jstest.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html40/strict.dtd">
<HTML>
<HEAD>
<meta name="viewport" content="width=device-width, target-densitydpi=device-dpi" />
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script>
function showMsg(){
alert("hello world!");
}
function showMsgInAndroid(){
myjs.showMsg('hello in android!');
}
</script>
</HEAD>
<BODY>
<span>測試js使用</span>
<button id='btntest' onclick='showMsgInAndroid()'>調用android方法</button>
</BODY>
</HTML>
2、布局文件main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
android:id="@+id/rl_main"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
>
<WebView
android:id="@+id/wv_test"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_above="@+id/btn_showmsg"/>
<Button
android:id="@+id/btn_showmsg"
android:layout_width="200dip"
android:layout_height="40dip"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:text="調用html中js方法"/>
</RelativeLayout>
3、然後是Activity,MainActivity.java
package com.harold.jstest;
import com.harold.base.JSKit;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import android.view.View.OnClickListener;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.widget.Button;
public class MainActivity extends Activity {
private WebView mWebView;
private Button btnShowInfo;
private JSKit js;
private Handler mHandler = new Handler();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//初始化控制項
mWebView = (WebView) findViewById(R.id.wv_test);
btnShowInfo = (Button) findViewById(R.id.btn_showmsg);
//實例化js對象
js = new JSKit(this);
//設置參數
mWebView.getSettings().setBuiltInZoomControls(true);
//內容的渲染需要webviewChromClient去實現,設置webviewChromClient基類,解決js中alert不彈出的問題和其他內容渲染問題
mWebView.setWebChromeClient(new WebChromeClient());
mWebView.getSettings().setJavaScriptEnabled(true);
//把js綁定到全局的myjs上,myjs的作用域是全局的,初始化後可隨處使用
mWebView.addJavascriptInterface(js, "myjs");
mWebView.loadUrl("file:///android_asset/jstest.html");
btnShowInfo.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
mHandler.post(new Runnable() {
@Override
public void run() {
//調用 HTML 中的javaScript 函數
mWebView.loadUrl("javascript:showMsg()");
}
});
}
});
}
}
4、最後是綁定全局js的類JSKit.java
package com.harold.base;
import android.widget.Toast;
import com.harold.jstest.MainActivity;
public class JSKit {
private MainActivity ma;
public JSKit(MainActivity context) {
this.ma = context;
}
public void showMsg(String msg) {
Toast.makeText(ma, msg, Toast.LENGTH_SHORT).show();
}
}
例子比較簡單,代碼里都加了注釋,這里就不多說了,本示例用的本地的html,如果訪問網路中的網頁,別忘記在AndroidManifest.xml中加許可權
<uses-permission android:name="android.permission.INTERNET"/>
④ .NET WEBKIT 怎麼用
WebKit.net最簡單使升數用方法渣中
【鏈接】http://blog.csdn.net/lyflcear/article/details/8110116
------------
或許對你有幫如笑山助
⑤ iOS 原生與JS交互 (webkit + js)
鑒於最近項目中需要用到原生與JS交互,以前做過交互,但是沒有總結一個demo,這次做的時候都忘記了,所以這次做了一個swift 和 OC 的demo。方便以後需要用交互功能的時候查看。
由於也沒有難的點,所以這里就不做技術上的講解了。直接上的地址: iOS webKit (swift + oc) 原生交互Demo . demo里包含了Swift 版和 OC版 ,由於UIWebView的性能相比webkit而言,相差甚遠,在加上現在的項目基本都支持8.0以上的系統,所以基本可以放棄UIWebview了。
⑥ 用html文件引用js文件,在谷歌能引用成功顯示,在火狐卻沒有看到效果,按F12也沒看到錯誤反饋,
正歷渣常來講狐狸的兼容性還是不錯的,但是谷歌的是用webkit的內核的,兼容性更好,火狐是Gecko的內核,你察爛舉看看你的代碼兼容不,還有就是狐狸有沒有升級敗碧到最新版本,或者穩定版本的
⑦ 請教java程序中如何使用webkit的js引擎
1、設置JS_ENGINE變數。有兩個值:jsc,v8。這是最方便的方式
2、如果JS_ENGINE變數沒有設置,或者設置的值不是jsc,v8其中的一個的話,這個makefile會選擇一個默認的引擎進行編譯。
對於默認引擎的選擇,主要取決於兩個變數ARCH_ARM_HAVE_VFP(是否支持VFP)和USE_ALT_JS_ENGINE(與安裝buildbot有關,這里不考慮,略過)。如果ARCH_ARM_HAVE_VFP為true的話,系統默認JS引擎選擇v8,否則選擇jsc
引擎確定後,接下來把JS引擎編譯為.a靜態庫libv8.a(使用v8引擎)或libjs.a(使用jsc引擎)
最後,編譯libwebcore.so
v8引擎位於/external/v8下面,編譯libwebcore.so時需要libv8.a。所以,如果是在/external/webkit下面使用mm的話,一定要確保v8已經被編譯過了
⑧ android里如何調用Js里的函數
思路:
1、需要使用webview打開網頁
2、設置webview支持腳本
3、然後通過webview的loadUrl方式進行js函數調用回
代碼:
webview.getSettings().setJavaScriptEnabled(true);
webview.addJavascriptInterface(object,"name");//把Name="name"的對象添答加到object中。object如果是this,就是window.name
webview.loadUrl("file:///android_asset/index.html");//注意這個資源的位置是跟res並列的文件夾下。,也可以打開遠程的代碼
android中調用js的function方法:
Callfunction(){
webview.loadUrl("javascript:function()");
}