毕业于贵州大学大数据与信息工程学院,目前是一名移动端工程师,就职于北京乾元大通信息技术有限责任公司。
1. 简单的上传任务 // 上传文件 - (void)uploadTask { NSURL *url = [NSURL URLWithString:@"http://127.
首先找到自己的资源页 例如: http://download.csdn.net/download/mazaiting/10196300 则删除的链接为http://download.
Dagger2项目主页 使用依赖 annotationProcessor 'com.google.dagger:dagger-compiler:2.
配置SSZipArchive 导入SSZipArchive后,先编译,会出现如下错误: 异常.png 解决方法: 单击项目->Linked Frameworks and Libraries->点击左下角加号->输入libz.tbd->Add,再次编译即可。
1. 不需要获取文件下载进度的方法 // 此方法无法获取到文件的下载进度,只能在结束时做响应 - (void)download { NSURL *url = [NSURL URLWithString:@"http://127.
GET // get请求 - (void)get { NSURL *url = [NSURL URLWithString:@"http://127.
1. JimToMov 依赖于Jmf框架 图1.png 2. 使用 package com.mazaiting; import java.io.
1. 最简单的方式 1). 创建一个下载工具类MTDownloader MTDownloader.h文件 #import @interface MTDownloader : NSObject - (void)download:(NSString *)netUrl; @end MTDownloader.
1. 创建MTProcessView, 并继承自UIButton MTProcessView.h #import @interface MTProcessView : UIButton // 进度 @property (nonatomic, assign)float process; @end MTProcessView.
上传文件格式 POST /php/upload/upload.php HTTP/1.1 Host: 127.0.0.1 Content-Type: multipart/form-data; boundary=标识(可自定义) 请求体 --标识(可自定义...
上传文件Http请求格式 POST /php/upload/upload.php HTTP/1.1 Host: 127.0.0.1 Content-Type: multipart/form-data; boundary=标识(可自定义) // 请求体 ...
保存密码使用到的框架SSKeyChain 登录成功后把账号和密码记录到沙盒中(偏好设置) // 登录成功之后,把账号和密码保存到沙盒中(偏好设置) - (void)saveUserInfo { NSUserDefaults *userDef...
从本地发送JSON数据到服务器 // 创建JSON - (NSData *)createJSON { // 1. 自己拼JSON形式字符串 NSString *jsonStr1 = @"{\"name\":\"zhangsan\",...
NSString+Hash.h #import @interface NSString (Hash) #pragma mark - 散列函数 /** * 计算MD5散列结果 * * 终端测试命令: * @code * md5 -s "string" * @endcode * * 提示:随着 MD5 碰撞生成器的出现,MD5 算法不应被用于任何软件完整性检查或代码签名的用途。
GET请求 // GET请求 - (void)get { NSString *name = @"张三"; NSString *pwd = @"zhang"; NSString *strUrl = [NSString stringWithFormat:@"http://127.
使用框架GDataXML-HTML解析XML 1). 先导入框架文件, 然后Command+B编译 图1.png 解决方法: I. 点击工程,然后出现如下界面 图2.png 选择Build Settings,在Build Settings下方输入Header Search Paths进行搜索,如下图,点击Basic右侧的All,双击Header Search Paths,然后将/usr/include/libxml2加入。
先从网络获取XML文件 NSURL *url = [NSURL URLWithString:@"https://127.0.0.1/videos.
采用分类的方法来解决 NSArray+Log.h #import @interface NSArray (Log) @end @interface NSDictionary (Log) @end NSArray+Log.
1. 连接百度服务器 // 1. 连接百度的服务器 BOOL result = [self connectIp:@"220.181.111.
Socket 套接字 纯C语言的,跨平台的 HTTP协议是基于Socket的 基本操作: 导入头文件 创建Socket 连接到服务器 发送数据给服务器 从服务器接收数据 关闭连接 服务开启 打开本机模拟服务器端...
ApacheWebDav文件服务器 // 启动Apache sudo apachectl -k start // 重启Apache sudo apachectl -k restart // 停止Apache sudo apachectl -k stop...
异常日志: 2018-01-04 15:33:42.270 01NSURLConnection[532:15138] App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure.
我们可以将经常使用的代码防止在代码块内,使用快捷命令输入 例如如下代码 NSURL *url = [NSURL URLWithString:]; NSURLRequest *request = [NSURLRequest requestWi...
UITableView UITableView内置了两种样式:UITableViewStylePlain,UITableViewStyleGrouped 里的方法: tableView处理步骤 #pragma mark 1.
1. VirtualApk项目地址 下载并解压后的目录结构如下,其中PluginDemo是官方写的一个示例 图1.png 2. 使用Android Studio直接打开VirtualAPK-master项目 运行项目将其安装至手机上。
1. tinker项目地址 下载并解压后的目录结构如下,其中tinker-sample-android是官方写的一个示例 图1.png 2.
1. Freemarker官方网站 注:官网下载的freemarker是无法直接应用到Android中的,如果要使用需要修改源码测试代码下载 1). 在assets文件夹下创建main.
Vysor 提供Windows、Mac、Linux和chrome插件,在电脑屏幕上可操作手机. Robolectric 可以在test文件夹下直接操作Android中的UI控件,方便调试。
Espresso自动化测试,创建项目时已导入相对应的包。 打开sdk(D:\java\androidstudio\sdk\tools)中的tools文件夹下的uiautomatorviewer.bat,点击下图中红色框中的内容捕获一帧画面。
Rebolectic 在src中有三个包,分别是:test、androidTest 和java test:是测试不涉及Activity,UI组件的纯Java方法。
布局文件 Activity代码 public class MainActivity extends AppCompatActivity { private static final Str...
项目地址:FreeLine FreeLine官网: FreeLine 1. 安装FreeLine插件 File->Settings->Plugins, 搜索输入FreeLine Plugin, 查找到后进行安装并重启Android Studio。
1. 打开WEB浏览器访问Python 图1.png 2. 将鼠标放在Downloads上,在显示出的列表中,点击右侧Download for Windows下方的Python 3.6.5 (这里为版本,进入网站的时间不同,版本可能不同)进行下载。
Gradle编译异常信息 Error:Unable to find method 'org.gradle.api.tasks.TaskInputs.file(Ljava/lang/Object;)Lorg/gradle/api/tasks/TaskInputFilePropertyBuilder;'.
下载 MingW 图1.png 点击右侧的Download Installer下载 下载好之后点击运行 图2.png 选择Install->Continue进行安装,稍等之后点击Continue.
BaseRecyclerViewAdapterHelper项目下载 1 . 使用 // 基类 具体实现类 布局 数据源 ...
Jcenter Maven Android Support库 project.ext { supportVersion = "25.
懒加载思路 在Fragment布局创建的时候调用懒加载方法,创建之后将isViewPrepared设置为true。 /**标记Fragment视图是否已经初始化完毕*/ private boolean isViewPrepared;...
UITextField属性 0.enablesReturnKeyAutomatically 默认为No,如果设置为Yes,文本框中没有输入任何字符的话,右下角的返回按钮是disabled的。
UILabel属性 1.text: 设置标签显示文本。 2.attributedText: 设置标签属性文本。 NSString *text = @"first"; NSMutableAttributedString *textLabelStr =...
UIImageView属性 1.Image 设置图片,默认显示 UIImageView *_imageView = [[UIImageView alloc]init]; _imageView.
UIButton属性 1.UIButton状态: UIControlStateNormal // 正常状态 UIControlStateHighlighted // 高亮状态 UIControlStateDisabled ...
异常 Error:Unable to start the daemon process. This problem might be caused by incorrect configuration of the daemon.
一、NSDictionary NSArray和NSMutableArray数组 存储数据特点:每个元素紧密相连,并且每个元素中都是直接存储的值. 缺点:数组元素下标不固定,都有可能发生变化,无法通过下标来唯一确定数组中的元素.
一、 框架: 系统或者第三方事先写好的写很牛X功能的类,把这些类交给我们使用,这些类的集合就叫框架. Foundation框架: 是一个包,有很多类和函数,定义了一些数据类型.
一、延展 延展: Extension 1). 是一个特殊的分类,所以延展也是类的一部分 2). 特殊之处: a. 延展这个特殊的分类没有名字 b. 只有声明没有实现,和本类共享一个实现 延展的语法 语法: @interface 本类名 () @end 没有实现,和本类共享一个实现.
一、 自动释放池的原理 存入到自动释放池中的对象,在自动释放池销毁的时候,会自动调用储存在该自动释放池中的所有对象的release方法. 可以解决的问题: 将创建的对象,存入到自动释放池之中,就不再需要手动的release这个对象了,因为池子销毁的时候,就会自动的调用池中所有的对象release.
一、 内存管理 内存的作用: 存储数据. 1). 如何将数据存储到内存之中 声明1个变量,将这个数据存储进去 2). 当数据不再被使用的时候,占用的内存空间如何被释放 内存中的五大区域 栈:局部变量,当局部变量的作用域被执行完毕之后,这个局部变量就会被系统立即回收.
一、 创建一个对象,内存是如何分配 1). 子类对象中有自己的属性和所有父类的属性 2). 代码段中每一个类都有一个isa指针,这个指针指向它的父类. 结构体与类 相同点: 都可以将多个数据封装为1个整体 struct Data{ ...
一、 Xcode文档的安装 1). Xcode文档提供了很多框架, 框架当中有很多类和函数, 提供的一些数据类型. 2). Xcode文档需要单独安装.