开发人员对小程序的感觉有点遥远又有点亲近,不少客户端开发者对小程式持有轻视态度。不过,现在许多产品通过小程式迅速吸引用户,这确实是一个值得关注的现象。
小程序的兴起
小程序无需下载安装即可使用,这一便捷性让应用变得触手可及。例如,微信和支付宝等平台的小程序,只需扫描或搜索即可启动。这种设计非常符合现代用户的习惯,避免了安装过多应用的困扰。在众多平台型应用中,小程序已成为动态内容的关键载体。据数据表明,采用小程序的平台,用户活跃度普遍有所提升。
在当前的市场环境下,众多企业和开发者都承受着项目快速上线的压力。小程序作为一种新兴的解决方案,为许多初创企业迅速进入市场开辟了新渠道。
与H5的比较
从动态化的视角来看,小程序相较于H5,更受平台型App的青睐。尽管H5具备跨平台等好处,但在性能上,小程序却占据上风。比如,某电商平台之前用H5制作的页面,加载速度较慢,改用小程序后,加载速度有了显著提高。
同时考虑到用户的使用体验,小程序能提供类似原生应用的体验,而H5在处理一些复杂设计时可能会遇到兼容性问题,相比之下,小程序的稳定性要高得多。
小程序的优势
小程序的特点在于其轻便,这是它的一大优点。对于一些小型的功能或简单的应用需求,制作成小程序不仅能降低开发成本,还能迅速投入市场。比如,企业为了某个临时活动而开发的应用,选用小程序能快速完成开发。
它的跨平台功能非常出色。不论是安卓还是iOS设备,小程序都能顺畅运行。某餐饮连锁企业采用了小程序来构建点餐系统,无需为不同系统分别开发应用,这样大大节省了人力和物力成本。
在各平台中的情况
微信小程序吸引了众多用户。众多小商家纷纷借助小程序来销售商品或推广服务。在这个庞大的流量池中,小程序因其易见性而备受青睐。
抖音的小程序进展很快。像不少网红就爱用这些小程序跟粉丝互动,它们依托抖音庞大的用户基础,传播速度极快。在支付宝里,小程序在市政服务等领域表现不俗,市民在支付宝上就能轻松处理众多事务。
开发面临的问题
// 方式1. build.gradle
allprojects {
repositories {
maven {
url "https://gradle.finogeeks.club/repository/applet/"
credentials {
username "applet"
password "123321"
}
}
}
}
// 方式2. settings.gradle
dependencyResolutionManagement {
...
repositories {
...
maven {
url "https://gradle.finogeeks.club/repository/applet/"
credentials {
username "applet"
password "123321"
}
}
}
}
各厂商设定了各自独特的限制和渲染标准。因此,开发者在小程序开发过程中,必须细致了解各个平台的特定要求。以腾讯为例,他们对小程序隐私政策的规范尤为严格。
// 方式1
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.7.21"
// 方式2
plugins {
id 'org.jetbrains.kotlin.android' version '1.7.21' apply false
}
开发一个既高效又价格低廉的小程序框架挺让人烦恼的。各种框架各有长短,企业和开发者需要根据自己的实际状况来做出权衡。
集成到App的价值
android{
packagingOptions {
// libsdkcore.so、libfin-yuvutil.so是被加固过的,不能被压缩,否则加载动态库时会报错
doNotStrip "*/x86/libsdkcore.so"
doNotStrip "*/x86_64/libsdkcore.so"
doNotStrip "*/armeabi/libsdkcore.so"
doNotStrip "*/armeabi-v7a/libsdkcore.so"
doNotStrip "*/arm64-v8a/libsdkcore.so"
doNotStrip "*/x86/libfin-yuvutil.so"
doNotStrip "*/x86_64/libfin-yuvutil.so"
doNotStrip "*/armeabi/libfin-yuvutil.so"
doNotStrip "*/armeabi-v7a/libfin-yuvutil.so"
doNotStrip "*/arm64-v8a/libfin-yuvutil.so"
}
dependencies {
implementation 'com.finogeeks.lib:finapplet:2.39.7'
implementation "org.jetbrains.kotlin:kotlin-stdlib:1.7.21"
}
}
将小程序融入App,能拓宽App的功能范围,同时不会给App带来过多负担。以游戏App为例,若加入游戏攻略、周边商城等小程序,能有效提高用户的留存与活跃度。
-keep class com.finogeeks.** {*;}
业务方可以通过这种方式来扩大现有业务。举例来说,新闻应用可以整合相关财经分析的小程序。
那么,你有没有在开发过程中考虑过应用小应用?欢迎发表意见,同时期待大家能点赞并转发这篇文章。
override fun onCreate() {
super.onCreate()
if (FinAppClient.isFinAppProcess(this)) return
val config = FinAppConfig.Builder()
.setSdkKey("M8j6KLAGGce/g0XJB8hlqUnu5dv6R/kwAxPre2U3SJc=") // SDK Key
.setSdkSecret("335d2c668af0ddeb") // SDK Secret
.setApiUrl("https://api.finclip.com") // 服务器地址
.setApiPrefix("/api/v1/mop/") // 服务器接口请求路由前缀
.build()
val initCallback = object : FinCallback {
override fun onSuccess(result: Any?) {
Log.e("petterp", "init success")
}
override fun onProgress(status: Int, info: String?) {
}
override fun onError(code: Int, error: String?) {
Log.e("petterp", "init error:$error")
}
}
FinAppClient.init(this, config, initCallback)
// 启动小程序
FinAppClient.appletApiManager.startApplet(this, "63ee4c259261fa0001202d60")
}