素材编辑 | 宋大狮
排版运营 | 小唐狮
ONE 问题描述
今天要和大家分享的是关于uni的问题,大狮感觉这个问题真的很糟心呀。
需求:在重置密码的时候,点击重置密码,会在弹出的模态框中显示拔打电话按钮,当点击拔打电话按钮时,会自动跳转到系统拨号界面。
问题:点击拔打电话按钮,在真机测试时,会自动跳转到系统拨号界面,没有任何问题。但是,将项目打包之后,在安卓机和苹果机上面都没有效果,无法正常跳转。
TWO 解决过程
尝试一:
思路:因为在真机测试时是没有问题的,所以考虑是否是打包时项目配置的问题。
实现:在manifest项目配置文件中,一番查看打包配置,发现在App权限配置中,安卓的CALLPHONE权限没有勾选,勾选后继续向下翻找,但似乎翻了一天一夜,都没有发现苹果对应的配置,于是只好直接重新打包测试。
结果:安卓机测试成功实现拨号功能,而苹果机测试在意料之中,依然没有效果。
尝试二:
思路:既然苹果打包配置没有问题,考虑是否是拨打电话API处的问题。
实现:在网上搜索一番后,发现苹果机的电话号码中,不能含有空格、斜杠等特殊字符,不然没有效果。看到这时,当场我就想吐槽点uni官方什么,此处省略一万个文明用语。回到makePhoneCall API处,修改电话号码参数,然后重新打包测试。
结果:苹果机测试也成功实现拨号功能。
THERE 知识总结
总结一:问题复盘
uni中通过makePhoneCall API实现拔打电话,将项目打包前,记得在manifest项目配置文件的权限配置项中,勾选安卓的CALLPHONE权限,并且记得修改电话号码参数的格式,保证其不能含有空格、斜杠等特殊字符。
总结二:makePhoneCall API
作用:拨打电话。
参数:
示例:
uni.makePhoneCall({
phoneNumber: '114' //仅为示例
});
FOUR 集思广益
欢迎大家对本问题留言或私信指教,一起学习提高!
- END -
ABOUT 关于作者
-
宋大狮 | 轻轻松松工作,简简单单生活
-
小唐狮 | 广场舞大军中最靓的仔