原生项目导入cordova_cordova项目原生更新 - CSDN
  • cordova导入原生项目网上很多教程,不再赘述 接下来修改首页,首页要继承CDVViewController, 但是这样写总是加载首页下的index.html页面。要让他们加载别的html,仅仅需要设置父类的几个属性。 wwwFolderName...

    看到一篇不错的文章https://www.jianshu.com/p/e74bc7abac8d

    看了好多教程都没有找到怎么实现这个功能,今天把它试出来了
    在这里插入图片描述
    将cordova导入到原生项目网上很多教程,不再赘述
    接下来修改首页,首页要继承CDVViewController,
    在这里插入图片描述
    但是这样写总是加载首页下的index.html页面。要让他们加载别的html,仅仅需要设置父类的几个属性。
    在这里插入图片描述
    wwwFolderName这个属性是设置网页所在文件夹
    startPage设置的是要加载的html文件
    在这里插入图片描述
    加载成功!Over!

    展开全文
  • @Android原生应用加载部署于服务器的Cordova项目的链接调用原生功能TOC 第一步:注释掉if (pluginManager.shouldAllowBridgeAccess(origin)) {的判断,改为红圈所示。 第二步:双击assembleRelease将Cordova项目...

    @Android原生应用加载部署于服务器的Cordova项目的链接调用原生功能TOC
    Cordova项目代码platform文件夹下对应平台中的www文件夹下的代码作为webapp项目部署到服务器上,安卓对应的activity继承CordovaActivity加载服务器上的webapp。
    第一步:注释掉if (pluginManager.shouldAllowBridgeAccess(origin)) {的判断,改为红圈所示。
    在这里插入图片描述
    第二步:双击assembleRelease将Cordova项目中的CordovaLib生成为jar包。assembleRelease执行完毕build的outputs会有一个.aar包,从其中提取jar包即可。
    在这里插入图片描述
    在这里插入图片描述
    第三步:将第一步生成的jar包导入到原生项目。
    第四步:将Cordova项目中的main源码复制到原生项目中。在这里插入图片描述
    第五步:拷贝xml文件夹中的所有xml到原生项目。
    在这里插入图片描述
    第六步:拷贝AndroidManifest中的provider到原生项目,${applicationId}改为原生项目包名。
    在这里插入图片描述

    展开全文
  • > 此实例代码为 Android Studio 原生项目集成 Cordova 插件演示,而非通过 Cordova 直接编译,方便您在现有 Android Studio 项目中集成 Cordova 进行 H5 混合开发。 为了结构清晰及易维护性,项目分三个 Module ,...
  • 这段时间在维护一个Cordova混合项目,以前稍微接触过Cordova,也写过简单的纯纯的Cordova的Demo,但是没有尝试过混合原生Cordova。 在接到项目后比较了一下项目架构和Cordova的结构,发现其中的差别还是不少,主要...

    背景:

    这段时间在维护一个Cordova混合项目,以前稍微接触过Cordova,也写过简单的纯纯的Cordova的Demo,但是没有尝试过混合原生的Cordova。

    在接到项目后比较了一下项目架构和Cordova的结构,发现其中的差别还是不少,主要差别就在项目是通过原生的Activity去启动CordovaActivity的。经验告诉我:这个Cordova被嵌入了原生当中,这货是个混合App。

    由于自己之前没有这样玩过,所以就开始从头学习一下如何去将Cordova嵌入原生做一个最简单的混合App,从简单开始,慢慢迭加。


    下面进入正题:

    1、 就Android、Cordova的开发环境而言我这里不再详述。


    2、确认好环境后,首先建立一个Cordova项目(这个项目只是为了给正式的原生项目提供必要一些必要资源的临时项目),并添加Android平台再编译。指令如下:

    $ cordova create CordovaProject
    $ cd CordovaProject
    $ cordova platform add android
    $ cordova build
    3、然后使用Android Studio将上述项目中的Android平台所对应的子项目(Cordova\CordovaProject\platforms\android)打开,此时系统会无法正常编译,但是我们可以修改gradle和相关配置文件解决这以问题,然后项目就能正常编译了。

    3-1、修改文件gradle-wrapper.properties中的distributionUrl为:
    distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip

    3-2、修改build.gradle中的classpath为:
    buildscript {
        repositories {
            jcenter()
            maven {
                url "https://maven.google.com"
            }
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:2.2.3'
        }
    }

    3-3、错误:Error:(262, 0) Could not find method implementation() for arguments *****

    将gradle中对应的implementation换成compile


    3-4、修改相关的js的Builder文件:

     1、platforms\android\cordova\lib\builders\StudioBuilder.js:将gradle的zip的版本改为3.3(gradle-3.3-all.zip),将所有的implement替换为compile

     2、platforms\android\cordova\lib\builders\GradleBuilder.js:改动同上



    4、通过编译后再使用Gradle工具构造我们需要的jar包。

    具体步骤:点击Android Studio右方的Gradle工具图标,找到CordovaLib->Tasks->build->assembleRelease,双击。

    进入CordovaProject\platforms\android\CordovaLib\build\outputs\aar目录,解压其中的CordovaLib-release.aar文件,得到class.jar,这就是我们需要的jar包,将class.jar改为:cordova-8.0.0.jar。


    5、新建一个Android原生项目,项目名为:MyAndroid。将上一步的jar包导入此项目,关于Android Studio中怎样导入第三方jar包的具体操作本文不做介绍。


    6、拷贝assets文件。

    具体操作:将临时Cordova项目(第2步中建立的项目)中的Android的assets文件(CordovaProject\platforms\android\app\src\main\assets),放入最终项目(第5步建立的项目)对应的目录中(MyAndroid\app\src\main)中。


    7、拷贝org文件。

    具体操作:将临时Cordova项目(第2步中建立的项目)中的Android的org文件(CordovaProject\platforms\android\app\src\main\java\org),放入最终项目(第5步建立的项目)对应的目录中(MyAndroid\app\src\main\java)中。

    8、拷贝config.xml文件。

    具体操作:将CordovaProject\platforms\android\app\src\main\res\xml\config.xml拷贝至MyAndroid\app\src\main\res\xml

    9、将MainActivity.java改为继承CordovaActivity.java,通过loadUrl(launchUrl)加载html页面。(当然,你也可以选择使用其他的Activity继承CordovaActivity来达到混合目的)。


    10、然后编译运行,你将看到如下错误:

    Error:Error converting bytecode to dex:

    Cause: Dex cannot parse version 52 byte code.

    解决方案:修改build.gradle(Module: app)中的defaultConfig,在其中加入jack允许:

    ...
      defaultConfig {
        ...
        jackOptions {
          enabled true
        }
      }
    11、然后,运行成功。


    展开全文
  • 第二步:将Cordova项目的Cordovalib导入安卓项目,并在app的build.gradle中添加依赖; 第三步:在main文件夹下创建assets文件夹,然后将Cordova项目的H5端代码(即WWW文件夹)拷贝到assets里面; 第四步...

    首先你得要有一个cordova的项目,因为太多太多的东西需要从那里复制粘贴了。。。
    那我们就开始吧!

    第一步:打开你的android原生项目;

    第二步:将Cordova项目的Cordovalib导入安卓项目,并在app的build.gradle中添加依赖;

    图1


    第三步:在main文件夹下创建assets文件夹,然后将Cordova项目的H5端代码(即WWW文件夹)拷贝到assets里面;
    在这里插入图片描述
    第四步:在res下创建一个新的文件夹xml,然后将Cordova项目中res\xml\config.xml拷贝进去;
    在这里插入图片描述
    第五步:创建一个包,包名为com.test.MyPlugin,然后把Cordova项目对应目录下的MyPlugin.java文件复制粘贴进去;

    第六步:再把cordova项目中的白名单的包复制粘贴过来;
    在这里插入图片描述
    第七步:开始测试:

    7.1 新建类TestCordovaActivity,继承CordovaActivity,加载index.html

    public class TestCordova extends CordovaActivity {
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    
        // enable Cordova apps to be started in the background
        Bundle extras = getIntent().getExtras();
        if (extras != null
                && extras.getBoolean("cdvStartInBackground", false)) {
            moveTaskToBack(true);
        }
    
        // Set by <content src="index.html" /> in config.xml
        // 加载H5首页
        loadUrl(launchUrl);
    }
    }
    

    7.2 在MainActivity添加按钮,点击跳转至TestCordovaActivity页面

    public class MainActivity extends AppCompatActivity {
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    
        Button button = findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this,
                        TestCordova.class);
                MainActivity.this.startActivity(intent);
            }
        });
    }
    }
    

    在这里插入图片描述
    上面是我看别人做的,顺便写下来让自己印象深刻一点,不过借鉴过来的时候并不能一次性就跑通,还是有些问题的,下面就写出我觉得需要注意的点:

    第一点:白名单一点要按照上面我写的那样,包名一致,类名一致;

    第二点:config.xml文件中一定要注意value的值!!!
    在这里插入图片描述
    value的值就是MyPlugin.java文件的路径!!!

    第三点:就是注意cordova.plugin.js文件中的内容!
    在这里插入图片描述

    展开全文
  • 小乙先生接到一个特殊的任务,在原生android里面集成cordova。早就耳闻cordoca的大名,但是工作没...这里给个链接 cordova中文网 里面有如何搭建环境和创建项目二、android原生集成cordova(环境 window7 androi...
  • cordova 插件想要访问Android原生的Activity 操作如下  步骤1.在生成插件的文件夹中找到自动生成的 plugin.xml文件 配置此文件 步骤2.插件文件夹 src/android/ 文件夹下准备拷贝资源 ...
  • 很多小伙伴给我发邮件,催促我写第二篇教程, 那今天我们手把手的教大家写一个原生插件吧! 首先,我们确认环境是否一致 请确保在开发前,有以下环境:(右侧是我的版本) Nodejs: v10.15.1 (此版本不同也可) Cordova: v...
  • 五、AS环境下将CordovaLib作为依赖导入 1. 将CordovaLib作为module导入 2. 添加依赖 六、自定义插件 1.自定义你的java类 1.1 包名,等下会用到 1.2 继承的父类 1.3 重写的方法 1.4 传递的参数 1.5
  • 上面已经写的很明确了 ,主要操作都写的很明确 需要主要的几个点 : ...1. 导入第三方下载来的SDK依赖库 使用custom= "true" <framework src="src/ios/libs/faceLiveReflect.framework" custom="true" /> ...
  • 有些项目一开始是原生开发的,后期可能需要进行混合开发。这里提供一个在原生工程中引入Cordova工程的demo。具体导入方法可以参考我在csdn上写的博文http://blog.csdn.net/e20914053/article/details/50170487
  • 在此之前,你可能需要看另外一篇博客:...通过上面博客,得到了hello项目。准备现有的Android项目,我的是project_code,效果图如下(图一是平常练习的demo): 按如下步骤操作: 一:(前面得到的hello...
  • 原生应用:Android中是java,iOS中是Objective-C、Swift为主要语言进行开发。 纯Web应用:也就是所谓的响应式网站,在移动和PC中通过浏览器访问。 混合型应用:利用Web应用和原生应用婚后进行开发。比如展现部分用...
  • iOS-Cordova集成开发,已有项目集成cordova 项目组准备开发一个APP,要求Android和iOS端页面完全一致,除了一个页面跟业务相关的不同,其他界面基本一致,因此,萌生一个想法,关于webAPP的想法。于是乎苦逼的...
  • 最近做了一个功能,公司是用html写的上层,需要调用android自带的语音合成和...由于是第一次用到Cordova,所以把它的搭建android项目和实现流程一并写上。一、用Cordova搭建一个android工程。 下载nodejs,并配置环境变
  • cordova 就不做过多介绍了,先从配置开始,这里使用安卓环境来试验。 一、nodeJs nodejs 下载 http://down.liangchan.net/node-v0.12.5-x64.zip 安装成功后。 windows+r 输入:cmd 回车 然...
  • 今天我们来说一说如何利用Android Studio开发工具真机调试cordova项目。我们假设你已经有一个cordova的安卓项目,并且你的设备的usb调试等工作已经准备完成; 首先我们来项目的大致结构,具体目录的说明大家可以参照...
  • Cordova是什么? 初学Cordova的人,虽然了解一点点,知道Cordova是用来将html,css,js变成app,但并不知道...它是一个可以把H5代码变成iOS、安卓等原生代码的东西? 它是一个封装了H5浏览器的壳?可以装在iOS、安卓
  • Phonegap 调用本地的Activity插件 ...本节主要记录调用Activity的方式;...在assents 目录下的 cordova-plugins.js文件添加配置 2 在assets/www 的 plugin目录下编写javascript接口 3 在res/xml 目录下配置
1 2 3 4 5 ... 20
收藏数 570
精华内容 228
关键字:

原生项目导入cordova