有奖猜歌游戏是一款基于uni-app、uniCloud、uniAD 开发的小游戏,通过猜歌曲、观看广告赚取现金奖励。
本游戏基本特征如下:
如果不喜欢折腾音乐版权问题,也有简单的猜字谜项目模板。https://ext.dcloud.net.cn/plugin?id=7996
加群时请备注你的DCloud appid,什么是DCloud appid说明。
游戏界面如下:
网赚创业,从这里开始!
前端基于uni-app开发,后端基于uniCloud开发
整个有奖猜歌游戏,有2个项目,复用同一个uniCloud空间。一个项目是App端,另一个项目是管理端。
管理端面向开发商的运营人员使用,设置游戏参数,查看玩家日志,审批提现等,admin管理后台是另外插件: https://ext.dcloud.net.cn/plugin?id=4825
本插件即为App端,面向手机用户使用,功能包括:
https://songgame.dcloud.io/markdown-share-docs/7c10e46bbc42ccb913710b7db53cea45/
https://songgame.dcloud.io/markdown-share-docs/d1d7bc5414edbeacca84856e1693b7e1/
一键更新此插件:在项目根目录package.json右键点击,“从插件市场更新”。
注意:更新合并时,去掉勾选
uni_modules
--》uni-config
--》uniCloud
--》 ... --》uni-id
和uni-pay
,以及manifest.json
,防止配置文件被重置,需要重新配置。更新后注意检查其他配置文件。
uniCloud/cloudfunctions/common/uni-config-center/uni-stat/config.json
文件初始化数据库失败。失败详情: 数据表 opendb-admin-menus 数据导入失败:唯一索引 menu_id 值重复,请检查 db_init.json 文件中是否含有与已有数据重复的_id或其他唯一索引字段,修改或删除后重试。
,在uniCloud web控制台删除数据表 opendb-admin-menus,在db_init.json重新初始化opendb-admin-menus
。为了方便快速体验此游戏,本文档部署流程分为:真机体验快速部署流程(尽量减少各项配置,目的快速完成部署体验此游戏)和正式商用部署流程(需要申请各项配置,等待审核周期长),请根据自身需求选择。
App登录分一键登陆和微信登录两种方式。初期体验时在微信申请登录很麻烦,可以先开通一键登陆快速体验。一键登陆是运营商提供的、比短信验证码更方便、更安全、更便宜的方案。详见。
开通配置
打开文件 uniCloud
--> cloudfunctions
--> common
--> uni-config-center
--> uni-id
--> config.json
,
找到如下节点:service
--> univerify
,填写appid
。appid
就是manifest
里的appid
。
方式一:
uniCloud
目录-->database
,右键选择 “初始化云数据库”,右键“上传所有DB Schema”。uniCloud
-> cloudfunctions
目录右键,选择 “上传所有云函数、公共模块及actions”。方式二:
uniCloud
目录右键,选择“运行云服务空间初始化向导”,点击“下一步”,点击“开始部署”。到此为止,就可以真机运行跑起来了。使用一键登录,就可以开始体验有奖猜歌游戏。
这里运行的广告,是测试广告位,不会产生真实收益。
如果你要商用,还得申请各种资质。具体见下一章文档。
注意:真机运行需要制作自定义基座,制作后选择运行到自定义基座。什么是自定义调试基座及使用说明
在完成真机运行的基础之上,可继续如下流程。
有奖猜歌游戏投入运营前,需完成如下准备工作:
首先确定App的应用名称、包名、证书,后续在各个三方服务申请时,都需要包名和证书摘要。并且注意在HBuilderX中打包时,必须使用相同的包名和证书。
应用名称在manifest
里设置,注意不要包含“游戏”字样,否则上架应用商店时可能会被要求提供游戏版号。请以应用的名义上架。
开通配置
,在打开的web页面添加应用,充值。申请要求提供应用官网,如果还是没有官网的同学,可使用官网模板插件:https://ext.dcloud.net.cn/plugin?id=8935。
微信 appid 申请步骤:https://ask.dcloud.net.cn/article/208。
iOS平台微信SDK配置通用链接:https://ask.dcloud.net.cn/article/36445。
Android平台云端打包证书使用说明:https://ask.dcloud.net.cn/article/35985
以上业务都有审核周期,请提前处理。
注: Sigmob属于小型广告联盟,收益偏低。如有条件,还需开通优量汇,快手等广告渠道以便提高收益
HBuilderX3.4.0+已支持自动配置插屏广告(无需额外开发)。在应用启动或应用后台切到前台的场景时,开屏广告展示过后进入到应用内立即展示插屏广告。您可在uniAD后台“APP增强广告开屏管理”中配置该功能开启或者关闭。
华为广告需开发者在华为应用市场上架,且华为广告目前只展示在华为手机上。华为广告的收益相对较高,但华为广告接入标准较严,如应用不符合平台接入标准会被拒审。
为了广告收益最大化,uniAD建议您的应用至少要开通3家以上广告渠道(能多开就多开),只有开通3家以上广告渠道后优化算法才能有效启动。
有奖猜歌游戏开发完成后,需要开通广告,推荐流程为:申请软著 -> 开通快手广告 ->上架应用市场 -> 开通优量汇广告 ->若有公司资质可开通穿山甲广告。
先部署有奖猜歌前端项目,再到有奖猜歌游戏管理后台自行配置广告位和游戏相关参数
完成如下配置:
appid
、appsecret
、ios平台通用链接
。微信分享
,填写appid
、如需在iOS平台使用还需要配置通用链接,填写ios平台通用链接
。苹果登录
,IOS苹果授权登录参考文档。如不发布到Appstore,不需要配置此项app-plus
--> privacy
设置服务协议和隐私政策
弹框,将协议链接替换成你自己的。在项目目录uniCloud
--> cloudfunctions
--> common
--> uni-config-center
--> uni-id
--> config.json
文件里:
微信登录填写app-plus
--> oauth
--> weixin
,填写appid
、appsecret
, 在微信开放平台查看,微信开放平台
苹果登录需要配置,app-plus
--> oauth
--> apple
,填写包名bundleId
微信小程序端,mp-weixin
--> oauth
--> weixin
,填写微信小程序的appid
、appsecret
"app-plus": {
"oauth": {
"weixin": {//app端微信登录 ,填写`appid` 、`appsecret`
"appid": "",
"appsecret": ""
},
"apple": {//苹果登录,填写包名
"bundleId": ""
}
}
},
"mp-weixin": {
"oauth": {
"weixin": {//微信小程序,填写小程序appid、appsecret
"appid": "",
"appsecret": ""
}
}
}
提现方式有两种方式:支付宝个人批量转账和微信企业付款到零钱,可自行按需选择,在有奖猜歌游戏管理后台--> 提现设置 --> 提现方式配置
支付宝方式
微信方式
uniCloud
--》 cloudfunctions
--》 common
--》uni-config-center
--》 uni-pay
--》config.json
文件内,配置如下: {
"app":{
"weixin" : {
"appid" : "wxxxxxxxxxxxxxxx",//公众号id
"mchid" : "00000000000",//商户id
"partnerKey" : "xxxxxxxxxxxxxxxxxxxxx"//安全密钥
}
}
}
替换apiclient_cert.p12证书
微信支付接口中,涉及资金回滚的接口会使用到API证书,包括退款、撤销接口。商家在申请微信支付成功后,收到的相应邮件后,可以按照指引下载API证书,也可以按照以下路径下载:微信商户平台(pay.weixin.qq.com)-->账户中心-->账户设置-->API安全。更多内容详见
将 hallctrlsong
--> controller
目录下的apiclient_cert.p12
和 uni-admin
--> controller
目录下的apiclient_cert.p12
替换成从你自己微信商户平台下载的API证书。
如果在接入过程中遇到问题参考微信付款到零钱文档中错误码排查。
教程参考,微信App支付功能申请
如果在接入过程中遇到问题参考微信付款到零钱文档中错误码排查。
激励视频广告可以支持广告服务器到业务服务器的回调,用于业务系统判断是否提供奖励给观看广告的用户。配置服务器回调后,当用户成功看完广告时,广告服务器会访问配置的云函数,通知用户完成观看激励视频。
相对来讲服务器回调将更加安全,可以依赖广告平台的反作弊机制来避免用户模拟观看广告完成的事件。详见
你需要在uni-ad系统的激励视频广告位,点击配置激励视频,出现以下界面,选择服务空间,选择激励视频回调云函数rewarded-video-callback
,保存。
选择已配置好的广告位,展开可查看到Security key
,如下:
在uniCloud
--》cloudfunctions
--》common
--》uni-config-center
--》uni-ad
--》config.json
文件配置Security key
如下:
{
"fuhuoSecuritykey":"猜歌复活奖励视频,uniad 后台开通激励视频回调后生成的Security key",
"renwuSecuritykey":"做任务看视频,uniad 后台开通激励视频回调后生成的Security key"
}
在uni-config-center
目录,右键‘上传公共模块’
uniCloud
-> cloudfunctions
目录右键,选择 “上传所有云函数、公共模块及actions”。通过发送携带专属邀请码的下载页给同伴或用户安装App,能够自动发展下级好友、以及绑定新用户从属关系。
/download/
,用于托管下载页面,在有奖猜歌游戏管理后台--> 参数管理 --> 下载页设置,填写分销裂变下载页域名,格式例如static-XXXXXX-XXXX.bspapp.com/download
或xxx.com/download
uniCloud
--》database
--》opendb-app-versions.schema.json
,开启读取权限,将read:false改为 read:true ,右键'上传此DB schema'增加应用版本名称和应用版本号信息,打包app成功后,在admin管理后台--》升级中心--》发布新版。
因浏览器跨域问题,发行H5站点时需uniCloud web控制台,跨域配置
配置安全域名,允许该域名跨域访问云函数服务器。
发行分销裂变下载页:点击发行
--》上传网站到服务器
--》点上传
(未开通前端网页托管需要点击开通托管
,去uniCloud web控制台,前端网页托管
--》点击开通
)
注意事项
前端网页托管
--》参数配置
,找到默认域名或者配置网站域名,用默认域名(访问次数有限制),上线一定要配置自己购买的域名。根据工业和信息化部关于开展APP侵害用户权益专项整治要求,App提交到应用市场必须满足以下条件:
配置弹出“隐私协议和政策”:在项目的manifest.json
--> 源码视图
--> app-plus
--> privacy
节点,添加一下代码片段,修改文字内容,替换服务协议和隐私政策链接。
"privacy" : {
"prompt" : "template",
"template" : {
"title" : "服务协议和隐私政策",
"message" : " 请你务必审慎阅读、充分理解“服务协议”和“隐私政策”各条款,包括但不限于:为了更好的向你提供服务,我们需要收集你的设备标识、操作日志等信息用于分析、优化应用性能。<br/> 你可阅读<a href=\"https://ask.dcloud.net.cn/protocol.html\">《服务协议》</a>和<a href=\"https://ask.dcloud.net.cn/protocol.html\">《隐私政策》</a>了解详细信息。如果你同意,请点击下面按钮开始接受我们的服务。",
"buttonAccept" : "同意",
"buttonRefuse" : "暂不同意"
}
}
登录页服务协议和隐私政策配置:
在项目目录 components
--> uni-agreements
--> uni-agreements.vue
--> agreements
--> url
替换成自己的《用户服务协议》和《隐私政策》链接。
隐私权政策协议模板,可参考Android平台隐私与政策提示框配置方法文章附件。
不同细分领域的App隐私政策模板,可参考使用,APP隐私政策模板
Android平台 uni-app(5+ app) 应用上架应用市场合规指南
注意
IOS和Android云打包,配置正确的包名,勾选广告,打包。
注意:打包安卓或者苹果时,需要在开发者中心后台一键登录中配置相应平台的Android 包名或IOS BundleId 。
如果你需要二开,获取本项目的图片的psd原图,则需按照以下步骤申请:
微信小程序上线注意事项:
Android上架注意:
IOS上架注意:
ios上架重要配置
manifest.json
--》源码视图
--》搜索ios
,删除以下配置,如果不删除,将会被苹果驳回,务必删除此项
"UIBackgroundModes": ["audio"]
更多
本项目由DCloud委托大连一家外包公司开发,该公司同时承接二开定制工作。如有二开需求,请加QQ:691878059或1418504531(添加时备注来意)。
如果你不想养太多开发人员,可以每月支付几千维护费,让二开公司帮你运维。更低成本进行创业。
DCloud正在寻找更多行业服务商,开发各种基于uniCloud的项目,如论坛、阅读、短视频.... 由DCloud出资,开发完毕后上架插件市场,然后行业合作伙伴可持续接二开的项目。有意成为uniCloud行业服务商的公司或个人可以联系bd@dcloud.io。详见
初始化歌曲库,是由大连外包公司提供给开发者测试使用,商用中如需更丰富的歌曲库,请自行获取版权歌曲,并上传admin后台。可从如下方式获取:
初始化测试歌曲目前存在DCloud云储存下,建议将测试歌曲下载并上传到自己的云存储中,替换database
--> songlist.init_data.json
中歌曲地址url
{
"url": "",//填写你自己的歌曲存储地址
"daan1": "夜空中最亮的星",
"daan2": "牧马城市",
"daan3": "一吻天荒",
"correct": 1,
"createtime": 1617851118
}
uni-ad
就好。[本地调试]"[hallctrlsong]返回结果:" {"code":4001,"message":"errCode: 4001 | errMsg: 获取手机号码失败:uni一键登录 apiKey 不存在"}
解决方案:选择连接云端云函数
[hallctrlsong]:4008:应用所有者账号信息异常,请检查账号uni一键登录服务是否正常 at pages/login/login.js:250
可能原因:uni-id 依赖的uni-config-center里uni-id配置是旧的。
解决方案:删除uni-id下的 node_modules
Error:[hallctrlsong]:INVOKE_FUNCTION_FAILED:config-param-requred at pages/login/login.js:250
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。