8种机械键盘轴体对比
本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?
一、导入cordova项目
1.导入CordovaLib library
将cordova工程中的CordovaLib作为Module导入到你的项目中,之后gradle自动sync工程后可能会报以下错误:
error:Could not find property 'cdvCompileSdkVersion' on com.android.build.gradle.LibraryExte...
这是因为cordova集成自己的工程添加的属性,需要修改CordovaLib/build.gradle文件,将compileSdkVersion、buildToolsVersion两个参数的值改成和你项目中的一样即可。
2.在主项目中添加依赖
在app下的build.gradle文件添加对CordovaLib的依赖。dependencies{
compile project(':CordovaLib')
}
3.添加jar文件
把cordova项目中libs文件夹下的.jar文件拷贝到你项目的libs中,并添加对jar的依赖。
4.添加资源文件
把cordova项目中的assets/www资源文件夹拷贝到你项目的assets下。
5.添加配置config.xml文件
把cordova项目下的res/xml文件夹拷贝到你项目的app/src/main/res中。
6.配置AndroidManifest.xml文件
根据cordova项目的AndroidManifest.xml内容和需要向你的工程里添加相应的配置信息和权限.
7.添加java文件
把cordova项目中的src下的所有文件夹都拷贝到你项目的app/src/main/java/文件夹下。
二、在fragment中使用cordovaWebView(提一种方法)
1.写一个cordovaContext类实现cordovaInterface接口,代码如下:pubilc class CordovaContext extends ContextWrapper implement CordovaInterface {
Activity activity;
CordovaInterface cordova;
protected final ExecutorService threadPool = Executors.newCachedThreadPool();
public CordovaContext(Context base, CordovaInterface cordova) {
super(base);
this.cordova = cordova;
}
public CordovaContext(Activity activity) {
super(activity.getBaseContext());
this.activity = activity;
}
public void startActivityForResult(CordovaPlugin command, Intent intent, int requestCode) {
// cordova.startActivityForResult(command, intent, requestCode);
}
public void setActivityResultCallback(CordovaPlugin plugin) {
//cordova.setActivityResultCallback(plugin);
}
public Activity getActivity() {
return activity;
}
public Object onMessage(String id, Object data) {
return null;
}
public ExecutorService getThreadPool() {
return threadPool;
}
}
2.定义一个fragment类,在onCreateView中定义一个cordovaWebView,代码如下:public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState){
LayoutInflater localInflater = inflater.cloneInContext(new CordovaContext(getActivity()));
View view = localInflater.inflate(R.layout.fragment_home_cordova,null);
systemWebView = (SystemWebView) view.findViewById(R.id.cordovaWebView);
ConfigXmlParser parser = new ConfigXmlParser();
parser.parse(getActivity);//解析config.xml
webView = new CordovaWebViewImpl(new SystemWebViewEngine(systemWebView));//创建cordovaWebView
webView.init(new CordovaInterfaceImpl(getActivity(),parser.getPluginEntries(),parser.getPreferences()));
webView.loadUrl(parser.getLaunchUrl());
return view;
}
布局文件如下:
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
android:id="@+id/cordovaWebView"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
三、使用cordova指定腾讯x5内核浏览器
1.定义一个TencentWebView,如下:systemWebView = new TencentWebView(getActivity);
2.64bit无法使用Tencent x5内核解决办法:
如果 app 目录下存在多个so,特别是同时存在32bit和64bit的so,不同IDE有不同处理方式:如果使用的是 Android studio 则需要配置 defaultConfig { ndk {abiFilters “armeabi”, “armeabi-v7a”, “x86”, “mips” }},如果配置后编译报错,那么需要在gradle.properties文件中加上 Android.useDeprecatedNdk=true 即可; 如果使用的是Eclipse则将所有的.so文件都放置在lib/armeabi文件夹下,lib文件夹下不要有其他的armeabiXXX文件夹。
参考官方网址:http://x5.tencent.com/tbs/technical.html#/sdk