自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

JafarOne的博客

移动开发,学习笔记

  • 博客(24)
  • 收藏
  • 关注

原创 Flutter Widget框架

现代响应式框架主要用于构建UI根据状态渲染(当widget的状态发生变化时,widget会重新构建UI,Flutter会对比前后变化的不同, 以确定底层渲染树从一个状态转换到下一个状态所需的最小更改(译者语:类似于React/Vue中虚拟DOM的diff算法)编写一个MyAppBar/** * 创建一个自定义的AppBar */class MyAppBar extends Sta...

2018-11-19 17:18:01 170

原创 Flutter入门项目解析

对于一个应用来讲,无非就是页面、导航、网络加载、动画等等,那么Flutter也不例外,现在从官方入门项目来分析一下Flutter的基本结构。库的引入(使用外部包)Flutter的外部包都放在这个文件下 dependencies: flutter: sdk: flutter # The following adds the Cupertino Icons font to...

2018-11-05 10:47:44 851

原创 Flutter从入门到放弃之坑的神奇之处?

坑一关于环境变量的配置,这里要注意几点,不然你将会在这里卡死。这里只说Mac OS环境变量的配置。因为我是Mac首先 command+shift+.打开隐藏文件如果你是用的是自带的终端,请在这个文件中配置如果你使用的是zsh请在这个文件中配置环境变量。至于zsh是什么,不解释了需要配置的东西坑二虽然,我按照官方中文网配置了一番。遇到了Could not f...

2018-10-31 16:03:05 7448

原创 Android与WebView的JS交互

2018-10-31 15:46:51 249

原创 Retrofit网络库使用笔记

Retrofit网络库介绍- Retrofit是Square公司基于Restful风格推出的网络框架的封装- Retrofit与OKHttp的关系Retrofit是基于OKHttp的网络请求框架的二次封装,其本质仍然是OKHttp- Retrofit库包结构不到40个类的对OKHttp的封装- 与其他网络库对比Retrofit优点Retrofit网络库使用...

2018-10-23 15:46:04 238

翻译 Android 代码命名规范

目的增强代码的可读性增强代码的可维护性需要命名的代码有哪些?包 com.x.y.z 固定com+个人/公司名+应用名+功能模块名类 驼峰命名法 UpperCamelCase变量 小骆驼拼写法方法参数 小驼峰命名法资源文件常见单词缩写...

2018-10-09 18:09:27 221

翻译 Android App 性能优化

快、稳、省、小流程的操作体验稳定省电、省流量安装包小不好的体验卡顿内存泄露、崩溃代码质量和逻辑差导致耗流量、耗电安装包过大快 怎么才能快?影响卡顿的因素?UI的刷新、绘制启动,冷启动、热启动、温启动跳转、页面跳转、前后台切换即时反馈、点击事件、滑动事件、系统事件等等UIUI绘制原理Android 显示过程可以简单概括为:Android 应用程序把...

2018-10-09 17:06:16 273

原创 微信支付宝H5支付二合一

1:支付宝根据官方文档导入最新jar包、mainXml文件中加入支付宝的Activity、混淆文件等等按照官方配置配置即可。2:注意点(坑) (1):如果 WebView需要支持JS之间交互,请把JS代码放在一下代码中,不然会存在调不起来支付三方的H5页面@Override public void onPageStarted(WebView view, String url,...

2018-08-20 15:30:19 2676

原创 Android富文本之给一段字符串中某一段字符上色、添加点击事件等

// 给Terms添加点击 以及颜色 val registerTips:String = getString(R.string.vpe_register_tips) val spannable = SpannableString(registerTips) // 添加点击事件 要放在上色前面,不然上色会被覆盖掉 spannable.setSpan(object :...

2018-07-13 10:37:02 1099

原创 Android Studio 使用一段时间卡顿的解决办法

选择此处如果没有此文件,新建一个粘贴以下代码也就是为Android Studio分配最小内存和最大内存-Xms1024m -Xmx4096m -XX:MaxPermSize=350m -XX:ReservedCodeCacheSize=96m -ea -Dsun.io.useCanonCaches=false -Djava.net.preferIPv4Stack=t...

2018-07-11 15:31:13 2504

原创 循环&选择

cmp(Compare)比较指令   CMP 把一个寄存器的内容和另一个寄存器的内容或立即数进行比较。但不存储结果,只是正确的更改标志。    一般CMP做完判断后会进行跳转,后面通常会跟上B指令!BL 标号:跳转到标号处执行B.GT 标号:比较结果是大于(greater than),执行标号,否则不跳转B.GE 标号:比较结果是大于等于(greater than or equ...

2018-05-12 13:58:14 184

原创 还原高级代码

通过Main函数一段代码来测试#import <UIKit/UIKit.h>#import "AppDelegate.h"int glabel = 12;int func(int a,int b) { printf("haha"); return a + b + glabel;}int main(int argc, char * argv[]) {...

2018-05-12 11:18:56 605

原创 安卓DataBing解决问题

VM管理视图和数据package com.vpgame.eric.main.articles;import android.databinding.Bindable;import android.databinding.ObservableBoolean;import android.util.Log;import android.view.View;import com...

2018-05-07 18:43:51 1140

原创 内存分区

代码区可读可写可执行栈区 放参数和局部变量 也是可读可写堆区域 可读可写 动态申请 全局变量区域 可读可写 常量区域 所谓只读 逆向可读可写 因为都是IDE的限制而已...

2018-05-07 18:10:57 127

原创 状态寄存器

测试状态寄存器也称之为标记寄存器,其实都是一个东西。那么这个标记寄存器可以很方便的帮助我们进行破解,那么怎么破解呢?俗称暴力破解先看断点处的汇编代码:发现cpsr的地址为16进制:0x80000000那么 0x80000000的二进制是多少呢?0x1000 0000 0000那么我想把此寄存器地址改为 0x0100 0000 0000 怎...

2018-05-06 22:53:30 7514

原创 函数的参数和返回值

函数的参数和返回值ARM64下,函数的参数是存放在X0到X7(W0到W7)这8个寄存器里面的.如果超过8个参数,就会入栈. 函数的返回值是放在X0 寄存器里面的.模拟函数的参数和返回值//// main.m// 5.1huibian//// Created by 贾元发 on 2018/5/1.// Copyright © 2018年 贾元发. All ...

2018-05-01 18:47:52 427

原创

栈栈:是一种具有特殊的访问方式的存储空间(后进先出, Last In Out Firt,LIFO)SP和FP寄存器sp寄存器在任意时刻会保存我们栈顶的地址.fp寄存器也称为x29寄存器属于通用寄存器,但是在某些时刻我们利用它保存栈底的地址!() 注意:ARM64开始,取消32位的 LDM,STM,PUSH,POP指令! 取而代之的是ldr\ldp str\st...

2018-04-25 22:38:58 384

原创 函数的本质

关于CPU的补充寄存器CPU除了有控制器、运算器还有寄存器。其中寄存器的作用就是进行数据的临时存储。 CPU的运算速度是非常快的,为了性能CPU在内部开辟一小块临时存储区域,并在进行运算时先将数据从内存复制到这一小块临时存储区域中,运算时就在这一小快临时存储区域内进行。我们称这一小块临时存储区域为寄存器。对于arm64系的CPU来说, 如果寄存器以x开头则表明的是一个64...

2018-04-23 23:54:20 658

原创 寄存器

不同的CPU,寄存器的结构和个数是不同的。ARM64有31个64位的寄存器,x0~x30,通常用来存放一般性的数据,被称为通用寄存器。w0~w28是32位的寄存器,因为64位是兼容32位的,所以可以使用64位寄存器的低32位,w0就是x0的低32位。通常CPU会将内存中的数据存储在寄存器中,然后对通用寄存器中的数据进行计算。mov只是读取内存的值,但是不会对内存中的值进行修...

2018-04-23 23:10:32 575

原创 进制

做个练习1 + 1 在__情况下等于 3 ? 十进制由10个符号组成: 0 1 3 2 8 A B E S 7 逢十进一如果这样定义十进制: 1 + 1 = 3!就对了!这样的目的何在? 传统我们定义的十进制和自定义的十进制不一样.那么这10个符号如果我们不告诉别人这个符号表,别人是没办法拿到我们的具体数据的!用于加密! 十进制由十个符号组成,逢十进一,符号...

2018-04-20 00:47:43 218

原创 CPU与内存

寻址能力决定了什么?决定了你需要多大的内存条,也就是你的CPU一定要和内存条相匹配。如果CPU地址很低,装了很大的内存条,那么发挥不出应有的性能。64位CPU就有64个总线。...

2018-04-20 00:19:48 262

原创 汇编初识

安装在手机上的App本质是可执行的二进制文件由CPU执行汇编语言的发展机器语言由0和1组成的机器指令汇编语言:使用助记符代理机器语言。高级语言:Object、Swift、Java等汇编语言种类8086汇编Win32 Win64 ARM汇编 (嵌入式、Mac、iOS )CPU硬件结构App的执行过程...

2018-04-19 23:57:44 143

原创 RN的高性能FlatList(相当于安卓的RecycleView、iOS的TableView)组件的基本使用

电影列表Item 先输出Item组件/** * Sample React Native App * https://github.com/facebook/react-native * @flow */import React, { Component } from 'react';import { Platform, StyleSheet, Text, View,

2018-04-12 18:18:43 1275

原创 RN盒模型以及FlexDirection布局

颜色值https://reactnative.cn/docs/0.51/colors.html#content盒模型加边框垂直关系是否换行主轴排列方式次轴排列方式学会使用界面调试器进行调试三个Item平分布局Item组件/** * Sample React Native App * http...

2018-04-12 11:00:08 1615

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除