app

适配iOS10 的相关权限设置

筅森魡賤 提交于 2019-12-07 14:07:58
参考一: 最近升级了Xcode8.0,真是很多坑啊,填完一个来另外一个,今天又遇到了一个,用Xcode8.0上传项目时被驳回说是info.plist里面没有设置NSPhotoLibraryUsageDescription、NSCameraUsageDescription、NSContactsUsageDescription、NSMicrophoneUsageDescription等字段,之前这些都是预设的不用加,现在强制了,真是郁闷,下面贴上解决方案 被驳回的原因: This app attempts to access privacy-sensitive data without a usage description. The app’s Info.plist must contain an NSPhotoLibraryUsageDescription key with a string value explaining to the user how the app uses this data. This app attempts to access privacy-sensitive data without a usage description. The app’s Info.plist must contain an NSCameraUsageDescription

App store 项目被拒的理由

拥有回忆 提交于 2019-12-07 09:59:00
项目被拒各种理由 1、程序有重大bug,程序不能启动,或者中途退出。 2、绕过苹果的付费渠道,我们之前游戏里的用兑换码兑换金币。 3、游戏里有实物奖励的话,一定要说清楚,奖励由本公司负责,和苹果没有关系。 4、用到苹果的标志。(应用的设计和Apple的Logo风格太像了也会被拒) 5、网络功能不能正常访问。 6、图标不能点击,不能点击的图标要置灰,或者直接隐藏。 7、没有设置default页,启动画面为黑屏,有一定概率被拒绝。 8、一个应用在线,但你想在发一个豪华版之类的,再开一个应用也会被拒绝。 9、用了著名游戏的关键字,比如说“愤怒的小鸟”之类的。 10、iPhone版不支持480*320分辨率被决绝。 11、娱乐分类App,拒绝理由:我们认为你的App不具有娱乐性。 12、你的软件不符合中国法律,还打电话来跟我说。(奶奶的,中国哪个法律说不可以翻墙。) 13、技术支持地址写的微博地址,于是被拒绝了。原因是:不能将需要登陆才能访问的网址作为技术支持地址。 14、说我们的应用不该用App开发,应该用HTML5。(而且还很热心的给出了参考链接哦) 15、调用截屏功能,当时没注意,是私有API,被拒.改成非私有API实现截屏功能就通过了. 16、开放了文件document分享功能(Application supports iTunes file sharing),被退回,理由

System APP 与普通 APP 简析

五迷三道 提交于 2019-12-07 08:51:37
在 Android 系统里,有两种类型的 App 存在,一种是系统级 App ,比如打电话,发短信,拍照等等,这些 App 最明显的特点就是 普通方法不可以卸载。另一种是普通 App ,用户从应用市场上下载主动安装的 App ,这样的 APP 可以卸载。 系统 App 和普通 App 还有很多其他重要的区别,主要体现在一下几个方面 安装位置 系统 App 默认安装在系统根目录 /system/app/ 目录下 普通 App 默认安装在内存目录 /data/data/app/ 目录下 广播接受权限 什么是广播接受权限?简单来说,在 Android 3.0 之后,Google 采取一些安全措施,对于没有被用户主动打开的 App 处于静默状态,收不到系统发送的广播信息(各种广播信息,开机,锁屏,网络变化等)。这样防止一些病毒类的 App 主动下载后自动打开运行。在 Android 2.3 以及之前的版本没有这个措施。 BTW,这个限制是针对普通 App 的 ,对于系统 App,即使没有被用户打开过,也还是可以收到各种广播信息。 是否可卸载 在没有 root 权限时,系统 App 默认是不可以卸载的。普通 App 用户具有完全的操作权限。用过一些无良厂商的定制手机的都知道,总有一些无聊的什么移动商城,沃商城之类的东西,无法删除,这些都是厂商定制的预装系统 App ,没有 root 权限

基于fiddler插件开发的移动测试网络监控与分析

寵の児 提交于 2019-12-07 07:45:47
一、背景和目的: 由于目前 App 前端业务测试很少关注后端网络接口的异常情况,客户端 QA 在项目测试时往往局限于关注测试功能,导致测试粒度较粗。即使按照 CheckList 过功能点,客户端 QA 对后端接口的覆盖情况也很难做到明确把握。 Fiddler 是我们在客户端测试时使用比较普遍的工具,常用于 HTTP 抓包、构造请求等等。原生的 fiddler 插件,缺乏对包大小,网络请求时长、接口访问频次、接口覆盖度等维度进行网络请求的分析,同时提供网速控制的功能,下文介绍开发定制 fiddler 插件辅助 app 业务测试。 二、工具实现原理 首先了解一下 fiddler 的实现 http 代理请求的原理,方便我们深入的研究。 Fiddler 实现的原理是截获了 windows 的 winnet 接口,在转发服务器请求和响应的阶段,可以 hook 住传递的参数,达到监控甚至修改网络数据包的能力。如下图所示, fiddler 提供了 4 个接口, AutotamperRequestBefore , AutotamperRequestAfter , AutotamperResponseBefore , AutotamperResponseAfter 。 我们在自己插件中实现这四个方法即可满足我们自己的测试需求。在我遇到的项目中,我们实现了以下功能。 1 、 发现网络请求包的异常问题

六、Containerizing an app

喜欢而已 提交于 2019-12-07 04:19:41
containerizing,有时也叫Dockerizing,is the process of taking an application and configuring it to run as a container. 容器通常是关于apps,特别是,它们使得app的构建、传送(将image推送到Docker仓库)、运行变的简单。 将应用程序装箱的过程如下: 1、编写应用程序代码; 2、创建Dockerfile描述app、它的依赖以及如何运行它; 3、将Dockerfile输入到docker image 构建命令; 4、Docker将应用程序构建成Docker image。 上述过程的图示如下: 接下来,将以一个简单的单容器 Node.js web app为例来进行装箱,主要包含如下步骤: • 获取app代码 • 检查Dockerfile • 装箱app • 运行app • 测试app • 使用多阶段构建转移到生产环境 • 一些最佳实践 注:使用网上环境,地址:https://labs.play-with-docker.com/ 1、获取app代码 从GitHubs上将https://github.com/nigelpoulton/psweb.git克隆到本地,psweb目录下包含了所有的应用程序源代码。如下图所示: 2、检查Dockerfile

JSPatch – 动态更新iOS APP

天大地大妈咪最大 提交于 2019-12-07 01:57:01
使用JSPatch可以解决这样的问题,只需在项目中引入JSPatch,就可以在发现bug时下发JS脚本补丁,替换原生方法,无需更新APP即时修复bug。 @implementation JPTableViewController ... - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { NSString *content = self.dataSource[[indexPath row]]; //可能会超出数组范围导致crash JPViewController *ctrl = [[JPViewController alloc] initWithContent:content]; [self.navigationController pushViewController:ctrl]; } ... @end 上述代码中取数组元素处可能会超出数组范围导致crash。如果在项目里引用了JSPatch,就可以下发JS脚本修复这个bug: #import “JPEngine.m" @implementation AppDelegate - (BOOL)application:(UIApplication *)application

图文讲解:iOS App提交流程

血红的双手。 提交于 2019-12-06 23:59:04
一、证书的导出 1.1 、前期工作 首先你需要有一个苹果的开发者帐号,一个 Mac 系统。 如果没有帐号可以在打开 http://developer.apple.com/ 申请加入苹果的开发者计划。支付 99 美元每年,怎么申请网上有详细的介绍,在此不多做介绍。 如果你已经有了一个 IDP ,打开 http://developer.apple.com/ 并登录到苹果 MemberCenter ,见下: 登录以后可以看到下面这个界面,列出了你开发需要的一些工具,支持, itunes app 管理等内容。 选择第二项 :Ios provisioning Portal ,进入,所有证书相关的都在这里进行。 1.2 、申请 AppId 在下图的左边选择 App IDs ,我们先创建一个 AppId ,对于要发布到 Appstore 上的程序, 都有一个唯一的 AppId ,下面会列出你当前所有的 AppId 。 我们点击右上角的 New App ID : 其中有两项需要你自己填: 第一个 Description ,用来描述你的 AppId ,这个随便填,没有什么限制; 第二项 Bundle Identifier (App ID Suffix) ,这是你 appid 的后缀,这个需要仔细。 因为这个内容和你的程序直接相关,后面很多地方要用到,最好是 com.yourcompany

uni-app之APP和小程序微信授权

邮差的信 提交于 2019-12-06 22:50:23
uni-app之APP和小程序微信授权 uni-app 介绍 APP微信授权 检测服务商 授权登录 获取用户信息 示例代码 小程序微信授权 获取用户基本信息 微信登录 微信登录状态监测 uni-app 介绍 uni-app 是一个使用 Vue.js 开发跨平台应用的前端框架。 适用平台:Android、iOS、微信小程序。实现了一套代码,同时发布到Android、iOS、微信小程序。 参考官方: https://uniapp.dcloud.io/ APP微信授权 检测服务商 检测手机上是否安装微信、QQ、新浪微博等。 uni.getProvider({ service: 'oauth', success: function (res) { console.log(res.provider); } }); 授权登录 获取openid,(unionid)等 uni.login({ provider: 'weixin', success: function (loginRes) { console.log(JSON.stringify(loginRes)); } }); 获取用户信息 uni.getUserInfo({ provider: 'weixin', success: function(infoRes) { console.log('-------获取微信用户所有-----')

移动app开发框架uni-app系列2

不羁的心 提交于 2019-12-06 22:49:15
继上次对uni-app有了初步认识之后,我们继续学习这款框架。 首先说一下我对框架提出的一些问题 框架,众所周知都会内置一些自己css,js和封装组件,但这些都应该在源文件中找到,以便应对复杂的需求环境,但是我在uni-app的源文件中始终没找到一个index.css的文件,但是我在谷歌开发者工具中有显示在某某文件夹下,这让我很抓狂。(如果哪位大佬找到了,真挚的希望告知一下) uni-app的upx单位 uni-app 使用 upx 作为默认尺寸单位, upx 是相对于基准宽度的单位,可以根据屏幕宽度进行自适应。uni-app 规定屏幕基准宽度750upx。 页面元素宽度在 uni-app 中的宽度计算公式: 750 * 元素在设计稿中的宽度 / 设计稿基准宽度 注意: 动态绑定的 style 不支持直接使用 upx。 <!-- - 静态upx赋值生效 --> <view class="test" style="width:200upx"></view> <!-- - 动态绑定不生效 --> <view class="test" :style="{width:winWidth + 'upx;'}"></view> 解决办法: 在js中用uni-app的函数uni.upx2px()转换为px之后进行动态绑定 uni-app的css执行顺序 导入的css先执行 >

uni-app跨平台APP开发

余生长醉 提交于 2019-12-06 22:43:21
uni-app跨平台APP开发 uni-app 介绍 开发 开发工具 HBuilderX模拟器连接 框架介绍 目录结构 生命周期 路由 页面样式与布局 配置 pages.json manifest.json 组件、接口 全局变量、方法 uni-app 介绍 uni-app 是一个使用 Vue.js 开发跨平台应用的前端框架。 适用平台:Android、iOS、微信小程序。实现了一套代码,同时发布到Android、iOS、微信小程序。 官方: https://uniapp.dcloud.io/ 开发 开发工具 (1)HBuilderX 下载地址: http://www.dcloud.io/hbuilderx.html (2)微信开发者工具 下载地址: https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html HBuilderX模拟器连接 夜神模拟器 下载地址: https://www.yeshen.com/ (1)打开夜神模拟器 (2)找到模拟器安装目录,执行以下命令 nox_adb connect 127.0.0.1:62001 nox_adb devices (3)找到hbuilder的adb.exe路径 (3)设置端口号 (4)选择项目运行-模拟器 框架介绍 官方: https:/