- 【原创 附源码】Flutter海外登录--Google登录最详细流程
奔跑的蚂蚁01
flutter
最近接触了几个海外登录的平台,踩了很多坑,也总结了很多东西,决定记录下来给路过的兄弟坐个参考,也留着以后留着回顾。更新时间为2024年2月8日,后续集成方式可能会有变动,所以目前的集成流程仅供参考,但是绝对详细。整个记录会包含源码。dart环境:sdk:'>=2.7.0['email','https://www.googleapis.com/auth/contacts.readonly',],);
- android权限管理
sanyer
从Android6.0开始,按照是否需要动态申请分为普通权限和特殊权限特殊权限需要程序运行时申请并通过之后才能使用,或者程序安装为系统应用或系统签名。注意:1、动态申请也需要在清单文件中配置(AndroidMenifest.xml)2、权限是分组的,同一组的权限申请其中一个,同组的权限就全部都申请了特殊权限特殊权限共有9组:CALENDAR日历CAMERA相机CONTACTS联系人LOCATION
- iOS 保存联系人到手机通讯录(CNMutableContact\CNContactViewController)
差不多先生__
前言产品需求,将App内的个人信息,保存到手机通讯录,故了解到iOS9以后可以使用CNMutableContact和CNContactViewController,其中CNMutableContact是隶属于Contacts的Framework,CNContactViewController是隶属于ContactsUI的Framework,这里这两个Framework不作详解,有兴趣自己可以看看,
- Contacts Provider基础
余生爱静
Android基础contentprovidercontactsprovider
作为四大组件之一的ContentProvider工作中我们很少会用到自己自定义的ContentProvider,用到的最多的就是系统提供的。官方文档提供了两种系统ContentProvider,一种是CalendarProvider,一种是ContactsProvider。今天我们的主角就是ContactProvider。TheContactsProviderisanAndroidcontentp
- Android调用系统通讯录获取联系人姓名和号码
souls0808
android
Android调用系统通讯录获取联系人姓名和号码首先使用下面代码启动系统通讯录//按钮的点击事件:打开系统联系人。publicvoidbtn_contacts(){Intentintent=newIntent(Intent.ACTION_PICK,ContactsContract.CommonDataKinds.Phone.CONTENT_URI);intent.addCategory("andr
- python学习笔记3 -- 字典+元组
Jizhi_Zhang
python学习笔记学习笔记
一、字典1、作用:储存键值对:key:value(键:值)键是用来查找值的,字作为键,值类比于释义2、表示:空的字典用一对花括号进行表示:contacts={}多个键值对:contacts={"a":"12334","b":"44444"}键和值之间用冒号表示对应,键值对之间用逗号进行分隔3、功能3.1查找想要获取某个键的值,在字典名后跟方括号[键]contacts["a"]注:键的类型不可变(参
- uni-app做A-Z排序通讯录、索引列表
季夏梧桐
uni-appjavascript前端
上图是效果图,三个问题访问电话通讯录,拿数据拿到用户的联系人数组对象,之后根据A-Z排序根据字母索引快速搜索首先说数据怎么拿-社区有指导https://ask.dcloud.net.cn/question/64117uniapp调取通讯录//#ifdefAPP-PLUSplus.contacts.getAddressBook(plus.contacts.ADDRESSBOOK_PHONE,func
- 移动安全-keytool
深度安全实验室
安全工具工具keytool
1需求需求1:获取应用签名的CN、OU、O字段keytool-printcert-jarfileC:\Contacts_MFV.apk|findstrCN=需求2:获取应用签名的MD52语法C:\ProgramFiles\java\jdk-19.0.1\bin>keytool密钥和证书管理工具命令:-certreq生成证书请求-changealias更改条目的别名-delete删除条目-expor
- Android中两种选择联系人方式
CruelLei
androidjava
1.在选择联系人方式网上也有很多案例有的说是使用ContactsContract.CommonDataKinds.Phone.CONTENT_URI也有的说是使用ContactsContract.Contacts.CONTENT_URI其实这两种方式都可以使用只不过ContactsContract.Contacts.CONTENT_URI这种方式需要多查询一遍一、使用ContactsContrac
- GBASE南大通用 访问其他数据库服务器
GBASE数据库
数据库GBASE南大通用GBASE
通过限定数据库对象(表、视图、同义词或例程)的名称,您可访问外部数据库中的任何表或例程。当外部表与当前数据库位于同一数据库服务器上时,您必须以数据库名称和冒号限定对象名称。例如,要引用不是本地数据库的数据库中的表,下列SELECT语句访问来自外部数据库的信息:SELECTname,numberFROMsalesdb:contacts在此示例中,查询从表contacts返回数据,该表在数据库sale
- pp.project.save_project 项目更新
小二郎_Ejun
URLpp.project.save_project请求方式POST请求参数参数名类型必填说明token[string]是无project_id[string]是项目idname[string]是项目名称contacts_id[string]否主联系人idcontacts_name[string]否主联系人名字contacts_phone[string]否主联系人电话client_id[strin
- Qt QList<std::unique_ptr<Contact>> 的问题
Jasonakeke
C/C++系列BugC++智能指针错误unique_ptr
QList>m_contacts;m_contacts.emplaceBack(newContact("",""));m_contacts.emplaceBack(newContact("",""));m_contacts.emplaceBack(newContact("",""));m_contacts.emplaceBack(newContact("",""));第二行的emplaceBack
- 用C语言写了个简单的通讯录
月临水
C语言c语言算法开发语言
文章目录每日一言代码contacts.hcontacts.ctest.c结语每日一言我们所爱之物昭示着我们究竟是谁。--托马斯·阿奎纳代码contacts.h#pragmaonce#define_CRT_SECURE_NO_WARNINGS1#defineMAX10//通讯录最大存储量#include#include#include#include#includetypedefstructPeo{
- key 在React开发中的作用
link_hui
遇到的warning我们在使用React可能会遇到下面这种情况.首先定义一个Contact组件://contacts是使用Contacts的地方定义的一个数组importReact,{Component}from'react';classContactsextendsComponent{render(){console.log('props',this.props)return({this.pro
- Android危险权限
dongaddxing
Androidandroidjavaapache
android.permission.READ_CALENDAR允许程序读取用户日历数据android.permission.WRITE_CALENDAR允许一个程序写入但不读取用户日历数据android.permission.CAMERA,允许访问摄像头进行拍照android.permission.READ_CONTACTS允许程序读取用户联系人数据android.permission.WRIT
- Proto3语法详解01
linkindly
java数据库开发语言
1.字段规则消息的字段可以用下面几种规则来修饰:●singular:消息中可以包含该字段零次或一次(不超过一次)。proto3语法中,字段默认使用该规则。●repeated:消息中可以包含该字段任意多次(包括零次),其中重复值的顺序会被保留。可以理解为定义了一个数组。更新contacts.proto,PeopleInfo消息中新增phone_numbers字段,表示一个联系人有多个号码,可将其设置
- suppp
不想当副班
django
供应商管理查询添加供应商序号供应商名称联系人联系电话简介操作${vs.count}${s.name}${s.contacts}${s.tel}${s.info}编辑删除上一页总共${requestScope.pager.pageCount}页,当前第${requestScope.pager.currentPage}页下一页超市管理系统编辑供应商×供应商联系人电话简介关闭提交添加供应商&
- Python:用字典建立一个通讯录,向字典中添加和删除通讯人信息,查询某个人的信息,然后输出通讯录中所有人的信息。
楚旒华
pythonpython
用字典建立一个通讯录,向字典中添加和删除通讯人(名字、电话、邮箱、工作单位等),查询某个人的信息,然后输出通讯录中所有人的信息。采用列表里套字典的方法,比较简单contacts=[]defadd():mes="Pleaseenterthemessageofthepeople,andspiltthemwithspace"mes+="\nphoneemailadress"name=input("Ple
- Python 用嵌套字典实现手机通讯录(详解版)
周华2022
Python入门案例python
一、先搭建一个框架。有条理地把要实现的功能罗列出来!#定义一个字典用于暂存信息(程序结束,数据删除)contacts=dict()input_buf='请输入序号:'whileTrue:#打印菜单界面print(f'''{"="*8}手机通讯录{"="*8}1.添加联系人\t\t2.查看联系人3.删除联系人\t\t4.修改联系人5.查找联系人\t\t0.退出''')#选择菜单choice_menu
- ProtoBuf的使用
linkindly
后端
目录1.创建.proto文件1.1文件规范1.2添加注释1.3指定proto3语法1.4package声明符1.5定义消息(message)1.6定义消息字段2.编译contacts.proto文件3.序列化与反序列化的使用1.创建.proto文件1.1文件规范•创建.proto文件时,⽂件命名应该使用全小写字母命名,多个字⺟之间⽤_连接。例如:lower_snake_case.proto。•书写
- 数据库SQL语句之外键
一再叠唱.
数据库sql数据库
数据库的关系模型中包括了①主键②外键③索引本文主要讲解的是外键一对一模型即一个表的记录对应到另一个表的唯一一个记录例如,students表的每个学生可以有自己的联系方式,如果把联系方式存入另一个表contacts,我们就可以得到一个“一对一”关系:idstudent_idmobile11135xxxx630022138xxxx220935139xxxx8086既然是一对一关系,那为啥不给stude
- Dom4j解析XML文件
丁总学Java
#XMLxmljavaextensiblemarkuplanguage
- VUE的el-select下拉框基本用法
大少爷π
vue.jselementuijavascript
参考:Vue2el-select下拉框,默认选择第一个值_猫小黑呀的博客-CSDN博客_select下拉框默认选中第一个el-select下拉框基本写法:查询exportdefault{name:'Corporate-Contacts',data(){return{formInline:{station:[],//station_id的值station_Name:'',//namestation_
- C语言实现——通讯录管理系统
IT大鸵鸟
c语言c++算法
#include#include#include#defineMAX_NAME_LENGTH20#defineMAX_PHONE_LENGTH15#defineMAX_CONTACTS100structContact{charname[MAX_NAME_LENGTH];charphone[MAX_PHONE_LENGTH];};structContactcontacts[MAX_CONTACTS]
- ProtoBuf—2
你好,冯同学
ProtoBuf学习protobuf序列化反序列化
文章目录1、字段规则2、消息类型的定义和使用3、enum的使用4、any类型2、oneof类型3、map类型1、字段规则消息的字段可以用以下几种规则来修饰:singular:消息中可以包含该字段零次或一次(不超过一次)。proto3语法中,字段默认使用该规则repeated:消息中可以包含该字段任意多次(包括0次),其中重复值的顺序会保留。可以理解为定义了一个数组更新contacts.proto,
- Contacts and ContactsUI 通讯录简单使用一
写代码的小书童
HelloContacts,saygoodbyeAddressBook!Contacts.framework框架针对线程安全的只读使用进行了优化。9.0以上才可以。contactclass是线程安全的,contactclassislikeNSDictionary并且有可变子类CNMutableContact。youcancreateyourowncustomlabels.不说多,先显示一下你的通讯
- 发布谷歌市场 要求和注意事项
黄成科
javaandroid上架谷歌
工程配置1.targetSdkVersion=31及以上,minSdk212.AndroidManifest.xml只能配置这些权限。基础权限业务包3.启动页面权限申请权限Manifest.permission.READ_CONTACTS,Manifest.permission.WRITE_EXTERNAL_STORAGE,Manifest.permission.READ_EXTERNAL_STO
- Flutter Android & IOS 获取通讯录联系人列表
且随疾风前行.
Flutterflutterandroidios
1.在pubspec.yaml文件中添加contacts_service和permission_handler插件的依赖:dependencies:contacts_service:^0.6.3#获取联系人permission_handler:^11.0.1#权限请求2.在你的Dart代码中,导入contacts_service插件:import'package:contacts_service/
- android开发判断滚动条,Android 开发技巧之 手动拖动滚动条快速滑动
weixin_39845220
android开发判断滚动条
android手动拖动滚动条快速滑动只需在ListView中加入一个参数android:fastScrollEnabled="true"android:focusable="true"android的源代码如下:在contacts_list_content.xml中:android:layout_width="fill_parent"android:layout_height="fill_pare
- 小心升级最新版iOS 12!苹果不给你后悔药
6cf90f876801
前不久,苹果正式停止签署iOS12.2代码,这意味着你不能降级至这个系统版本。其实这个操作一点都不让人意外,毕竟5月13日苹果发布了iOS12.3的正式版,而以往正式版发布一周多时间后,他们都会关闭一些老系统的降级通道。苹果iOS12.2主要解决了涉及WebKit,Contacts,FaceTime,GeoServices,Mail,Messages,Safari,系统内核和其他关键软件的43个安
- 微信开发者验证接口开发
362217990
微信 开发者 token 验证
微信开发者接口验证。
Token,自己随便定义,与微信填写一致就可以了。
根据微信接入指南描述 http://mp.weixin.qq.com/wiki/17/2d4265491f12608cd170a95559800f2d.html
第一步:填写服务器配置
第二步:验证服务器地址的有效性
第三步:依据接口文档实现业务逻辑
这里主要讲第二步验证服务器有效性。
建一个
- 一个小编程题-类似约瑟夫环问题
BrokenDreams
编程
今天群友出了一题:
一个数列,把第一个元素删除,然后把第二个元素放到数列的最后,依次操作下去,直到把数列中所有的数都删除,要求依次打印出这个过程中删除的数。
&
- linux复习笔记之bash shell (5) 关于减号-的作用
eksliang
linux关于减号“-”的含义linux关于减号“-”的用途linux关于“-”的含义linux关于减号的含义
转载请出自出处:
http://eksliang.iteye.com/blog/2105677
管道命令在bash的连续处理程序中是相当重要的,尤其在使用到前一个命令的studout(标准输出)作为这次的stdin(标准输入)时,就显得太重要了,某些命令需要用到文件名,例如上篇文档的的切割命令(split)、还有
- Unix(3)
18289753290
unix ksh
1)若该变量需要在其他子进程执行,则可用"$变量名称"或${变量}累加内容
什么是子进程?在我目前这个shell情况下,去打开一个新的shell,新的那个shell就是子进程。一般状态下,父进程的自定义变量是无法在子进程内使用的,但通过export将变量变成环境变量后就能够在子进程里面应用了。
2)条件判断: &&代表and ||代表or&nbs
- 关于ListView中性能优化中图片加载问题
酷的飞上天空
ListView
ListView的性能优化网上很多信息,但是涉及到异步加载图片问题就会出现问题。
具体参看上篇文章http://314858770.iteye.com/admin/blogs/1217594
如果每次都重新inflate一个新的View出来肯定会造成性能损失严重,可能会出现listview滚动是很卡的情况,还会出现内存溢出。
现在想出一个方法就是每次都添加一个标识,然后设置图
- 德国总理默多克:给国人的一堂“震撼教育”课
永夜-极光
教育
http://bbs.voc.com.cn/topic-2443617-1-1.html德国总理默多克:给国人的一堂“震撼教育”课
安吉拉—默克尔,一位经历过社会主义的东德人,她利用自己的博客,发表一番来华前的谈话,该说的话,都在上面说了,全世界想看想传播——去看看默克尔总理的博客吧!
德国总理默克尔以她的低调、朴素、谦和、平易近人等品格给国人留下了深刻印象。她以实际行动为中国人上了一堂
- 关于Java继承的一个小问题。。。
随便小屋
java
今天看Java 编程思想的时候遇见一个问题,运行的结果和自己想想的完全不一样。先把代码贴出来!
//CanFight接口
interface Canfight {
void fight();
}
//ActionCharacter类
class ActionCharacter {
public void fight() {
System.out.pr
- 23种基本的设计模式
aijuans
设计模式
Abstract Factory:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 Adapter:将一个类的接口转换成客户希望的另外一个接口。A d a p t e r模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 Bridge:将抽象部分与它的实现部分分离,使它们都可以独立地变化。 Builder:将一个复杂对象的构建与它的表示分离,使得同
- 《周鸿祎自述:我的互联网方法论》读书笔记
aoyouzi
读书笔记
从用户的角度来看,能解决问题的产品才是好产品,能方便/快速地解决问题的产品,就是一流产品.
商业模式不是赚钱模式
一款产品免费获得海量用户后,它的边际成本趋于0,然后再通过广告或者增值服务的方式赚钱,实际上就是创造了新的价值链.
商业模式的基础是用户,木有用户,任何商业模式都是浮云.商业模式的核心是产品,本质是通过产品为用户创造价值.
商业模式还包括寻找需求
- JavaScript动态改变样式访问技术
百合不是茶
JavaScriptstyle属性ClassName属性
一:style属性
格式:
HTML元素.style.样式属性="值";
创建菜单:在html标签中创建 或者 在head标签中用数组创建
<html>
<head>
<title>style改变样式</title>
</head>
&l
- jQuery的deferred对象详解
bijian1013
jquerydeferred对象
jQuery的开发速度很快,几乎每半年一个大版本,每两个月一个小版本。
每个版本都会引入一些新功能,从jQuery 1.5.0版本开始引入的一个新功能----deferred对象。
&nb
- 淘宝开放平台TOP
Bill_chen
C++c物流C#
淘宝网开放平台首页:http://open.taobao.com/
淘宝开放平台是淘宝TOP团队的产品,TOP即TaoBao Open Platform,
是淘宝合作伙伴开发、发布、交易其服务的平台。
支撑TOP的三条主线为:
1.开放数据和业务流程
* 以API数据形式开放商品、交易、物流等业务;
&
- 【大型网站架构一】大型网站架构概述
bit1129
网站架构
大型互联网特点
面对海量用户、海量数据
大型互联网架构的关键指标
高并发
高性能
高可用
高可扩展性
线性伸缩性
安全性
大型互联网技术要点
前端优化
CDN缓存
反向代理
KV缓存
消息系统
分布式存储
NoSQL数据库
搜索
监控
安全
想到的问题:
1.对于订单系统这种事务型系统,如
- eclipse插件hibernate tools安装
白糖_
Hibernate
eclipse helios(3.6)版
1.启动eclipse 2.选择 Help > Install New Software...> 3.添加如下地址:
http://download.jboss.org/jbosstools/updates/stable/helios/ 4.选择性安装:hibernate tools在All Jboss tool
- Jquery easyui Form表单提交注意事项
bozch
jquery easyui
jquery easyui对表单的提交进行了封装,提交的方式采用的是ajax的方式,在开发的时候应该注意的事项如下:
1、在定义form标签的时候,要将method属性设置成post或者get,特别是进行大字段的文本信息提交的时候,要将method设置成post方式提交,否则页面会抛出跨域访问等异常。所以这个要
- Trie tree(字典树)的Java实现及其应用-统计以某字符串为前缀的单词的数量
bylijinnan
java实现
import java.util.LinkedList;
public class CaseInsensitiveTrie {
/**
字典树的Java实现。实现了插入、查询以及深度优先遍历。
Trie tree's java implementation.(Insert,Search,DFS)
Problem Description
Igna
- html css 鼠标形状样式汇总
chenbowen00
htmlcss
css鼠标手型cursor中hand与pointer
Example:CSS鼠标手型效果 <a href="#" style="cursor:hand">CSS鼠标手型效果</a><br/>
Example:CSS鼠标手型效果 <a href="#" style=&qu
- [IT与投资]IT投资的几个原则
comsci
it
无论是想在电商,软件,硬件还是互联网领域投资,都需要大量资金,虽然各个国家政府在媒体上都给予大家承诺,既要让市场的流动性宽松,又要保持经济的高速增长....但是,事实上,整个市场和社会对于真正的资金投入是非常渴望的,也就是说,表面上看起来,市场很活跃,但是投入的资金并不是很充足的......
 
- oracle with语句详解
daizj
oraclewithwith as
oracle with语句详解 转
在oracle中,select 查询语句,可以使用with,就是一个子查询,oracle 会把子查询的结果放到临时表中,可以反复使用
例子:注意,这是sql语句,不是pl/sql语句, 可以直接放到jdbc执行的
----------------------------------------------------------------
- hbase的简单操作
deng520159
数据库hbase
近期公司用hbase来存储日志,然后再来分析 ,把hbase开发经常要用的命令找了出来.
用ssh登陆安装hbase那台linux后
用hbase shell进行hbase命令控制台!
表的管理
1)查看有哪些表
hbase(main)> list
2)创建表
# 语法:create <table>, {NAME => <family&g
- C语言scanf继续学习、算术运算符学习和逻辑运算符
dcj3sjt126com
c
/*
2013年3月11日20:37:32
地点:北京潘家园
功能:完成用户格式化输入多个值
目的:学习scanf函数的使用
*/
# include <stdio.h>
int main(void)
{
int i, j, k;
printf("please input three number:\n"); //提示用
- 2015越来越好
dcj3sjt126com
歌曲
越来越好
房子大了电话小了 感觉越来越好
假期多了收入高了 工作越来越好
商品精了价格活了 心情越来越好
天更蓝了水更清了 环境越来越好
活得有奔头人会步步高
想做到你要努力去做到
幸福的笑容天天挂眉梢 越来越好
婆媳和了家庭暖了 生活越来越好
孩子高了懂事多了 学习越来越好
朋友多了心相通了 大家越来越好
道路宽了心气顺了 日子越来越好
活的有精神人就不显
- java.sql.SQLException: Value '0000-00-00' can not be represented as java.sql.Tim
feiteyizu
mysql
数据表中有记录的time字段(属性为timestamp)其值为:“0000-00-00 00:00:00”
程序使用select 语句从中取数据时出现以下异常:
java.sql.SQLException:Value '0000-00-00' can not be represented as java.sql.Date
java.sql.SQLException: Valu
- Ehcache(07)——Ehcache对并发的支持
234390216
并发ehcache锁ReadLockWriteLock
Ehcache对并发的支持
在高并发的情况下,使用Ehcache缓存时,由于并发的读与写,我们读的数据有可能是错误的,我们写的数据也有可能意外的被覆盖。所幸的是Ehcache为我们提供了针对于缓存元素Key的Read(读)、Write(写)锁。当一个线程获取了某一Key的Read锁之后,其它线程获取针对于同
- mysql中blob,text字段的合成索引
jackyrong
mysql
在mysql中,原来有一个叫合成索引的,可以提高blob,text字段的效率性能,
但只能用在精确查询,核心是增加一个列,然后可以用md5进行散列,用散列值查找
则速度快
比如:
create table abc(id varchar(10),context blog,hash_value varchar(40));
insert into abc(1,rep
- 逻辑运算与移位运算
latty
位运算逻辑运算
源码:正数的补码与原码相同例+7 源码:00000111 补码 :00000111 (用8位二进制表示一个数)
负数的补码:
符号位为1,其余位为该数绝对值的原码按位取反;然后整个数加1。 -7 源码: 10000111 ,其绝对值为00000111 取反加一:11111001 为-7补码
已知一个数的补码,求原码的操作分两种情况:
- 利用XSD 验证XML文件
newerdragon
javaxmlxsd
XSD文件 (XML Schema 语言也称作 XML Schema 定义(XML Schema Definition,XSD)。 具体使用方法和定义请参看:
http://www.w3school.com.cn/schema/index.asp
java自jdk1.5以上新增了SchemaFactory类 可以实现对XSD验证的支持,使用起来也很方便。
以下代码可用在J
- 搭建 CentOS 6 服务器(12) - Samba
rensanning
centos
(1)安装
# yum -y install samba
Installed:
samba.i686 0:3.6.9-169.el6_5
# pdbedit -a rensn
new password:123456
retype new password:123456
……
(2)Home文件夹
# mkdir /etc
- Learn Nodejs 01
toknowme
nodejs
(1)下载nodejs
https://nodejs.org/download/ 选择相应的版本进行下载 (2)安装nodejs 安装的方式比较多,请baidu下
我这边下载的是“node-v0.12.7-linux-x64.tar.gz”这个版本 (1)上传服务器 (2)解压 tar -zxvf node-v0.12.
- jquery控制自动刷新的代码举例
xp9802
jquery
1、html内容部分 复制代码代码示例: <div id='log_reload'>
<select name="id_s" size="1">
<option value='2'>-2s-</option>
<option value='3'>-3s-</option