APICloud模块开发之旅

首先说个大家感兴趣的,开发APICloud模块是可以赚钱的,可以把开发好的模块提交到APICloud模块Store上售卖,本人在就在Store上提交了一个视频处理模块videoKit,虽然赚的不多,但是改善伙食是够了。

APICloud

用过APICloud的人都知道,这是一个移动端集成开发平台,使用此工具可以开发基于H5的跨平台的APP,一套代码,两个终端(Android和IOS),上传代码,云端打包,此乃移动APP开发之利器。APICloud模块则是对这个平台的一个补充,当平台提供的接口和库无法满足开发者的业务需求的时候,就需要模块来帮忙,模块是由原生代码开发,本文主要讲解Android端完整流程。

开发环境:Windows XP/Win7/8/Mac OS;

Eclipse3.7及以上(官网下载Eclipse for Android Developers);

ADT21及以上;

Android SDK 21(5.0)及以上;

JDK6或者7。尽量不要使用JDK8,可能存在各种潜在问题;

在APICloud官网上下载它的模块工程ModulesDevProject_1.1.29.zip,以我的模块为例,项目结构如下

模块项目结构

如图你可以使用com.apicloud.module*的规范来定义你的的包名,与JS对象映射的类需要继承UZModule,这样才能将接口暴露给JS对象,需要暴露的接口方法在Java代码中定义的方式如下,必须是以jsmethod_开头的。

暴露的方法名

其中path和quality是js进行模块调用时作为参数传递过来的,对应的js调用如下所示

JS调用

JS的回调方法中的两个参数ret和err,它们的值也是在Java方法中输出的,分别对应成功和失败,Java代码如下

Sucess
Fail

还有一种情况,如果执行的逻辑是有进度信息的,也可以实时反馈给JS,具体的Java代码如下

Progress

代码功能实现后接下来就开始打包,APICloud模块打包是有规定的,首先先按照如下方式建立文件夹和一个模块描述文件

包目录结构

其中module.json,source和target,以及res_的命名是固定的,res_后可以跟你的模块名称。module.json中是对你的模块名和主类的描述

module.json

res_*文件中放的是模块项目中的资源文件包括AndroidManifest.xml(这个文件是可选的,如果有用到可以打进来,没用到可以不用打),这个文件夹中的目录结构和项目中的结构一样,直接拷贝就行了。

res_*目录

source目录中是用到的第三方JAR包和源码导出的JAR,target目录中是用到的so文件,如果支持多个CPU平台,可以不必建立armeabi目录,必须要建其他平台的目录

target目录

这些都准备好后放到一个文件夹中,然后将文件夹整体打成zip包,这样就可以按照官网的模块上传说明上传到APICloud模块Store上卖了,如果觉得没意思,也可以提交成免费模块供社区开发者使用。以上便是Android端的模块开发流程,有问题的可以在下边留言。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,680评论 25 708
  • 前夕 无名指戴着戒指 手指翻动纸张 脸上洋溢着幸福 不知是图书带来的 还是家中妻子的等候带来的 他拿出手机 在屏幕...
    夜昕子阅读 232评论 0 0
  • 人类知识体系的基本结构,是我多年学习思考的结晶。未经学界论证。我不敢保证它多么正确,但它一定非常有用。它的主要用处...
    火鱼鳗酥阅读 18,492评论 4 21
  • 今天看了一下新闻,据调查目前已经连续3年国内结婚登记率都在下降,这是一个什么现象呢,这背后又反应了一些什么问...
    云沐妈妈阅读 295评论 0 0