build.gradle 详解 简述:1) Java 开发中有两个大名鼎鼎的项目构建 ANT、Maven。2) Google 推荐使用的 Android studio 是采用 Gradle 来构建项目。Gradle 是一个非常先进的项目构建工具。Gradle 是用了一种基于 Groovy 的领域特定语言(DSL,Demain Specific Language)来声明项目设置,摒弃了 XML(如 ANT 和 Maven)的...
Android手机红外开发—点击和长按事件 上一篇文章《红外技术及Android手机红外遥控器开发》中简单介绍了红外遥控技术和Android 手机红外遥控开发操控中的点击事件,只需要按照编码协议规则对键值等进行编码解析,最后转化成数组形式表示的电平信号,调用Android红外技术API发送电平信号数组即可。但是在实际开发过程中,不仅需要实现点击按键模拟遥控器短按,也需要模拟遥控器的长按操作。那遥控器的长按操作发送的波形电平信号又是怎样的呢...
React Native开发环境配置 一、React Native简介由Facebook推出,基于JavaScript框架和React库来提高多平台开发效率的一门语言。其核心思想是:Learn once, write anywhere.目前react native在iOS上仅支持ios8.0以上,Android仅支持Android4.1以上。性能:内存和cpu介于原生和混合开发(Hybird)之间。语言:Rea...
ReactNative调用android原生View RN开发过程中,React Native是将原生控件封装桥接成JS组件来使用的,这保证了其性能的高效性。但是有时候官方封装的常用组件不能满足需求,就需要结合原生UI使用,例如:对原生实现的UI复用;复杂UI仍然需要原生自定义View实现。接下来就简单记录下RN开发过程中调用原生UI的流程。例如下面这个UI效果,就需要用到Android原生自定义View实现:以上图实现效果为例,分别从Andr...
Android之Canvas绘制图形 本文转自:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2012/1212/703.htmlAndroid中使用图形处理引擎,2D部分是android SDK内部自己提供,3D部分是用Open GL ES 1.0。今天我们主要要了解的是2D相关的,如果你想看3D的话那么可以跳过这篇文章。大部分2D使用的api都在android.graphics和android.graphics.drawable包中。他们提供了图形处理相关的: Canvas
红外遥控及Android手机红外遥控器开发 一、红外遥控红外遥控技术是通过红外技术、红外通信技术和遥控技术的结合实现的一种无线控制技术。由于红外线的波长较短,对障碍物的衍射能力较差,无法穿透墙壁,所以红外遥控术更适合应用在短距离直线控制的场合,也正是这样,放置在不同房间的家用电器可使用通用的遥控器而不会产生相互干扰。红外遥控所需传输的数据量较小,一般仅为几个至几十个字节的控制码,传输距离一般小于 10 米,因其功耗小、成本低、易实现等诸...
Win7安装Flutter环境时问题解决 问题:“无法将“Unblock-File”项识别为 cmdlet、函数、脚本文件或可运行程序的名称”我打开power shell运行‘flutter doctor’时,遇到以下问题:Checking Dart SDK version... 无法将“Unblock-File”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后重试。...
RN项目问题总结梳理 问题1问题描述:TextInput组件在页面底部时,弹出键盘时遮挡TextInput组件,用户无法正常输入内容分析解决:弹出键盘浮在页面布局之上占用了一部分布局控件,可以监听键盘的弹出和隐藏事件,实现动态调整页面布局。//页面装载时componentWillMount() { //监听键盘弹出事件 this.keyboardDidShowListener = Keyboar...
ReactNative手势上滑隐藏下滑显示 一、实现效果二、实现方式1 使用RN的panResponder组件来实现手势滑动2 在constructor中初始可变组件的属性值和stytleconstructor(props) { super(props); this.thresholdMin = 5; this.thresholdMax = 20; this.sapc...
ReactNative库版本的升级与降级 一、版本升级查看当前版本react-native -version2.查询react-native的npm包得最新版本(react native的npm包的地址为:https://www.npmjs.com/package/react-native),或者采用命令npm info react-native进行查看,具体截图如下:安装指定版本的react-na...
Firebase引用版本冲突解决:Android dependency 'com.google.android.gms:play-services-basement' has different 前两天在RN项目中集成原生的firebase,之后报错插件版本冲突,报错信息如下:What went wrong:Execution failed for task ‘:app:preDebugBuild’.Android dependency ‘com.google.android.gms:play-services-basement’ has different version f...
React Native常见报错解决整理 React Native从开发环境到入门练手,再到跑几个开源demo的整个过程中,遇到了不少问题,以下是对报错现象及解决方法的记录:Mac上运行iOS项目问题1:npm ERR! Unexpected end of JSON input while parsing near ‘…ire-main-filename":"^’问题1解决:运行npm cache clean–force问题2...
React Native 使用StackNavigation跳转页面 React Native项目中,跳转页面之前用的是Navigator,Navigator已经被React Native废弃,官方推荐的是react-navigation来替代Navigator,使用react-navigation的导航组件可以让页面跳转的实现更加简洁。一、react-navigation包括下面三个Navigator:StackNavigator: 这个组件是用来代替之前...
React Native实现底部Tab切换—TabNavigator 功能:使用React-native-tab-navigator(https://github.com/exponentjs/react-native-tab-navigator) 实现底部选项卡切换实现效果:实现过程:1、项目集成react-native-tab-navigator在项目根目录下,运行:npm install react-native-tab-navigator –-...
Mac平台搭建React Native iOS开发环境 1、安装node.js下载node.js安装包进行安装 https://nodejs.org/zh-cn/命令行查看Node js版本:npm –v,出现版本号说明安装成功2、 安装React Native命令行工具命令行下输入:sudonpm install -g react-native-cli安装成功后,可以通过react-native –h来查看帮助3、 安装ios开发工具x...
React Native开发者菜单&Chrome调试 React Native项目的开发者菜单打开如下:ReloadReload即将项目中js代码部分重新生成bundle,然后传输给模拟器或手机;Reload在只是修改了js代码的情况下,如果要预览修改结果,你不需要重新编译你的应用。在这种情况下,你只需要告诉React Native重新加载js即可。注意:如果你修改了native 代码或修改了Images.xcassets、res/d...
小米手机调试React Native,怎样进入开发者菜单 调试react-native应用时,真机上要通过按下菜单按钮或者摇动手机来开启Developer Menu。我在小米手机上尝试无效,有以下两个权限需要打开:进入设置—更多应用—找到要调试的应用1、权限管理—显示悬浮窗2、通知管理—悬浮通知(打开)打开这两项设置,在调试应用界面时,再次摇动手机就出现React Native的开发者菜单了...
WebStorm运行React Native项目 WebStorm是一款前端开发工具,也可以用于React Native项目下载安装WebStormWebStorm下载地址安装完不要运行webstrom下载破解补丁打开网址(IntelliJ IDEA 注册码),下载补丁然后将补丁复制到安装目录的bin目录下,例如:D:\Program Files\JetBrains\WebStorm 2018.2.3\bin修...
Windows平台搭建React Native开发环境 Windows平台搭建React Native开发环境1、安装JavaJDK 的版本必须是 1.8(目前不支持 1.9 及更高版本)环境变量,变量名"JAVA_HOME",变量值"d:\Java\jdk1.8.0_05"(即JDK的安装路径)环境变量,变量名"Path&am
Android Studio中我都用了哪些插件 ● 1、ECTranslation介绍:翻译插件,可以将英文翻译为中文,中文翻译为英文使用:右键—Translate结果:英文—中文结果:中文—英文● 2、Android ButterKnife Zelezny介绍:辅助butterknife生成注解,从此不用写findViewById,在Activity,Fragment,Adapter中选中布局xml的资...
Android App瘦身实践 App临发布前需要做一次瘦身工作,下面就简单记录下我的app瘦身的实践过程。开发中项目就只使用了一套资源,xxhdpi目录下放的1080X1920的图片资源,打包后Apk大小:29.4M瘦身前29.4M,开始瘦身1. 删除不用的资源文件(drawable资源,string资源,dimenx资源,raw资源)自动删除:选中res——右键——Refactor——Remove...
Android进度条/等待加载——旋转小圆点效果 进度条/等待加载——旋转小圆点效果1 效果图静态图片看不出效果,随后更新文章,附上github地址。 2、思想12个小圆点叠放(i=0,1,...11)动画一:依次从0度旋转到30*i度动画二:依次从30*i度旋转到360度因为不牵扯用户交互,所以用最基本的视图动画即可3 布局文件src\main\res\layout\activity_launch....
Java之反射的使用示例 1. 反射的概述1.1 什么是反射?Java 反射是指在运行时可以获取任意一个类的函数、属性、父类、接口等 Class 内部信息的机制。1.2 反射的使用时机通过反射可以在运行期实例化对象,并且调用该对象的任意一个方法和属性,例如,通过调用 get/set 方法获取变量的值,即使方法或属性是私有的的也可以通过反射的形式调用,这种“看透 class”的能力被称为内省。...
使用Android Studio的Dump Java Heap和MemoryAnalyzer分析内存泄漏 如何检测和分析内存泄漏?我们在项目开发过程中就一直使用的LeakCanary检测内存泄漏,附上链接:https://github.com/square/leakcanary ,这个特别棒,在开发阶段发现内存泄漏就能实时更改了,避免了到项目后期再花费时间额外排查内存泄漏,就是这么溜!一、说说使用Android Studio自带的Dump Java Heap如何排查内存泄漏,或者优化内存使用情...
Android自定义EditText修改粘贴来的内容 问题描述EditText输入框控件,用户长按可以使用系统自带的复制粘贴等功能,项目实现中,有个小需求,对于粘贴过来的内容,需要解密后在edittext的文本区域展示,怎么处理呢?简单分析EditText继承于TextView,它本身没有多少代码,大部分逻辑都是在TextView中,搜索“paste”找到了和粘贴相关的代码:@Override public boolean ...
Android应用发布前加混淆及注意事项 代码混淆代码混淆的是Java代码,无法混淆Native代码,资源文件drawable、xml等。1、作用:代码压缩、代码混淆以及资源压缩等的优化过程; 代码压缩:混淆流程将主项目以及依赖库中未被使用的类、类成员、方法、属性移除,这有助于规避64K方法数的瓶颈混淆: 将类名、属性名、方法名混淆为难以读懂的字母,比如a,b,c资源压缩:移除项目及依赖的库中未被使用的资源。...
kindle电子书转PDF,结合calibre工具和DeDRM_tools使用 买了kindle和对应的电子书,看了一半,想打印一部分,就想把kindle电子书先转换为PDF,操作了下,具体步骤如下:1、下载kindle PC客户端,登录账号,右键-下载;2、kindle PC客户端下载的电子书保存路径查看:工具-选项-内容;3、下载calibre,https://calibre-ebook.com/download_windows;4、下载DeDRM_plugin...
Android中使用@IntDef @Retention @StringDef 在Android开发中官网不推荐使用枚举enums。为什么呢?占用内存多(Enums often require more than twice as much memory as static constants.)。 Android中当你的App启动后系统会给App单独分配一块内存,App的DEX code、Heap以及运行时的内存分配都会在这块内存中。例如:publi...
git下载google android源码遇到两个报错 git下载google android源码遇到两个报错1、fatal: unable to access 'https://flutter.googlesource.com/gallery-assets/': Failed to connect to flutter.googlesource.com port 443: Operation timed out #16694解决:先执行命令g...
Android通过反射获取和回收运行时权限—调用grantRuntimePermission和revokeRuntimePermission方法 本文转载:https://www.jianshu.com/p/59d542f4b03b需要实现Android应用权限管理()需求:不需要用户点击允许按钮直接获取READ_PHONE_STATE等权限分析:因为用户可以在手机中通过打开设置-应用-选择具体应用-权限界面,手动打开用户所需要的权限(界面效果如图),我就想我怎么样可以在代码中模拟点击按钮打开权限的操作,于是我就去查看源码。...
Android渐变色状态栏和沉浸状态栏 1、项目中需要在开机图时去掉状态栏(1)实现方法如下: 在setContentView之后设置 //去掉状态栏 if (Build.VERSION.SDK_INT >= 21) { View decorView = getWindow().getDecorView(); int option ...
Android studio中duplicate entry: com/google/zxing/Writer.class 在Android studio中引入zxing依赖,如下:compile('com.journeyapps:zxing-android-embedded:3.6.0') { transitive = false }//生成二维码依赖compile ('com.google.zxing:core:3.3.0')//zxing核心依赖编译运行时出现以下错误:Error:Execution faile...
Installation failed with message INSTALL_FAILED_TEST_ONLY 从GitHub上下载了个Ddmo,编译时出现以下错误提示:Error:This Gradle plugin requires a newer IDE able to request IDE model level 3. For Android Studio this means version 3.0+ 之前也有遇到过此类问题,我用的Android Studio2.3.3,为了项目合...
GitLab用命令建立分支打Tag 做个备份1、建立分支是为了我个人修改的代码做备份,修改自己分之下的代码,不影响默认分支的代码,类似于Java中的安全拷贝吧。2、打Tag是为了对每次发布节点对应版本的代码做备份,流程就是对master下的这份代码,先建立分支后Version1.0.3—再提交到本地—再给当前代码打标签V1.0.3——先提交代码到分支Version1.0.3—再提交代码到标签V1.0.3,最后两次提交到Git...
Android Studio通过build.gradle区分多个apk 主要就是在moudle下的build.gradle文件中添加以下配置:android { compileSdkVersion 25 buildToolsVersion "25.0.1" lintOptions { abortOnError false } defaultConfig { applicatio
命令行安装压缩版MySQL 命令行安装mysql,更加方便快捷 1. 下载压缩包版MySQL2. 解压MySQL压缩包将以下载的MySQL压缩包解压到自定义目录下。3. 添加环境变量变量名:MYSQL_HOME,变量值:为mysql的自定义解压目录再在Path中添加 %MYSQL_HOME%\bin4. mysql注册为windows系统服务 1)在mysql解压后的目录下(例:D:\m...
android切换语言后刷新页面 关于更改APP语言,我的大致思路是:提供设置和获取APP语言的方法,并在sp中保存,初次默认使用系统语言;APP内设置语言后保存在sp中,摒弃直接重启APP的方法,不立即跳转页面并且刷新当前页面,跳转到对应的页面再根据真正的设置结果进行相应界面的刷新;此处注意,跳转之后判断是否真正进行了语言的切换,避免页面的重复刷新,这样实现灵活切换APP语言,给用户一个更好的体验效果。更改系统语言后刷...
Android Studio集成Library时报错,终极解决方法 Android Studio集成Library时报错,终极解决方法 Error:Execution failed for task ':zhxa:processDebugManifest'.> Manifest merger failed : Attribute meta-data#android.support.VERSION@value value=(25.3.1) f...
Android定位的实现 注:本文中代码使用的是c#语言,是在visual studio2012+xamarin下实现的,给自己做的备份。实现步骤:a. 开启手机定位相关设置并设定位参数b. 获取当前bestprovider,尝试通过getLastKnownLocation获取上次定位信息并显示c. 开启监听线程,监听位置提供者是否变化d. 如有变化,关闭当前监听,获取新的bestprovider获取上次定位信息并显
popwondows简单用法 PopupWindow,可以在当前屏幕的上层的显示一个弹窗,这个弹出框是悬浮在当前activity之上的,可以指定弹窗的位置以及背景色等特性,可以使用任意布局的View作为其内容。private void showPopupWindow(View view) { LayoutInflater mLayoutInflater = (LayoutInflater)getSystemService
NFC相关 一、关于三个action当标签调度系统完成对NFC标签和它的标识信息封装的Intent对象的创建时,它会把该Intent对象发送给感兴趣的应用程序。如果有多个应用程序能够处理该Intent对象,就会显示Activity选择器,让用户选择Activity。标签调度系统定义了三种Intent对象,以下按照由高到低的优先级列出这三种Intent对象: ACTION_NDEF_DISCOVERED: 这
c语言,字符串转换成整数 c语言的数字字符串转换为整数,1.可接受“123 2123”处理为1232123;2.空指针、正负号、非纯数字字符串、数据越界溢出的错误处理。 #include<stdio.h>#include<stdlib.h>#include<limits.h>//子函数的声明int StrToInt(char * string);void main...
android两种定时器实现 一、定时循环执行 private static Handler handler = new Handler(); private static Runnable runnable = new Runnable(new Action(run)); private static void run() { /
android 软键盘 InputMethodManager 1、需要强制隐藏或显示Android输入法键盘时,下边这个是让输入法状态发生逆转,如果当前未显示则显示出来,如果显示出来则隐藏。 //设置键盘输入状态 InputMethodManager imm = (InputMethodManager)GetSystemService(Activity1.InputMethodService)
深入浅出UML类图 深入浅出UML类图 作者:刘伟 ,发布于:2012-11-23,来源:CSDN 在UML 2.0的13种图形中,类图是使用频率最高的UML图之一。Martin Fowler在其著作《UML Distilled: A Brief Guide to the Standard Object Modeling Lang
C#开发Android-文件的读写 ////file = new SundryClass.FileClass(); //Java.IO.File dirv = new Java.IO.File(filepath); //if (!dirv.Exists())//工作目录是否存在? //{ // dirv.Mkdir();/
[Xamarin]测试账号申请与到期后如何续用 在Xamarin网站上可以申请30天试用的测试账号。试用期内,Xamarin会提供完整的功能试用。30天试用时间到期后,在Visual Studio里面你加载你的项目的时候,项目旁会标注(无法使用)。如下图:[] 在没有购买License而测试账号又到期的情况下,你的项目是没有办法被载入的。[] 如果尝试重载项目,Xamarin会弹出提示窗口要求你购买License
C#开发android—访问应用程序的app文件及data文件 public class Activity1 : Activity { File app; File data; string spacename; string appname; //Java.IO.File filetxt = new Java.IO.File(saveDir + "/123.
C#开发Android的tabhost使用+侧拉抽屉 layout.xmlhttp://schemas.android.com/apk/res/android" android:id="@+id/hometabs" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_p
Android tabHost使用小结 TabHost是多标签控件,包含多个Tab 使用方法一: 新建Activity继承TabActivity,利用其方法生成TabHost 1,继承自TabActivity类 2,getTabHost()获取TabHost实例 3,LayoutInflater.from(this).inflate(界面布局Id, tabHost.getTabContentView(), t
C#开发android之alertdialog用法 // void okclick(object sender, DialogClickEventArgs e) //{ // TableRow tablerow1 = sender as TableRow; // this.tablayout.RemoveView(tablerow1); //}
adb server is out of date. killing... 1:今天调试android的时候发现一个诡异的问题[html] view plaincopyprint?C:\Users\xxxx>adb start-server adb server is out of date. killing... ADB server didn't ACK * failed to start daemon * C:\U
WPF开发示例,详细操作步骤 演练:开始使用 WPF.NET Framework 4其他版本3(共 3)对本文的评价是有帮助 - 评价此主题 更新:2010 年 12 月本演练介绍了一个 Windows Presentation Foundation (WPF) 应用程序的开发,该应用程序包括多数 WPF 应用程序所共有的元素,即Extensible Application Markup La...
Android通过webservice连接sqlserver数据库 教程会拿一个具体的例子来讲,一步一步来,也许细节上还可以继续加工,但大致的流程就是这样的。 本教程有五个部分:项目说明开发环境部署数据库设计服务器端程序设计客户端(android端)程序设计项目说明 这个项目意在实现一个简单的android连接Sqlserver的功能。 就做一个简单的库存管理功能,包括对仓库内现有货物
android adb启动失败问题 adb server is out of date. killing... ADB server didn't ACK * failed to start daem 打开Eclipse,真机连接之前,是要启动adb的,突然发现就失败了。错误如下--》adb server is out of date. killing... ADB server didn't ACK * failed to start daemon *第一猜想,就是adb的端口号被占用了。随机--一.查看是否是豌豆荚或者手机助手占用了端口号,但是发现没有。二.
C#开发和调用webservice 1.1、Web Service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。是:通过SOAP在Web上提供的软件服务,使用WSDL文件进行说明,并通过UDDI进行注册。XML:(Extensible Markup Language)扩展型可
eclipse下axis2创建web service(四) 上节我们做了一个简单的例子,调用的服务里的方法只是简单返回一个字符串,这次我们要做一个复杂点的例子,调用服务里的方法返回一个java Bean对象。 1. 首先做一个简单的java bean ,代码如下Java代码 package com.deltaj.server; public class Persion {
eclipse下axis2创建web service(三) 这节我们就来写一个客户端来调用一下这个服务。主要关注一下如何用elispe的axis2的插件来生成stub代码。1.在eclispe 的package Explorer 中点击右键,在菜单中选择新建--->other...----->Axis2 Code Generator2.点击next,进入下一个页面,选择从wsdl文件来产生java文件。3. 点击next
eclipse下axis2创建web service(二) 工具都已经准备齐全了。我们来动手做一个小例子来小试牛刀!这一节我们先利用axis2来发布一个web service 的服务,然后在下一节我们做一客户端来调用这个服务。我们的服务很简单的,就是输入一个字符串,然后打印出一段字符串。代码很简单,主要是测试用。Java代码 package com.deltaj.server; public clas
eclipse下axis2创建web service(一) axis2创建web service(一) 作者:张涛 axis2 是新一代的web service开发工具,它会让你的web service开发变得轻松,快捷。下面让我们以一个实际的例子来体验一下。首先,工欲善其事,必先利其器。就让我们先做好一些必备的准备工作吧。1.下载
Android开发环境配置图文教程(jdk+eclipse+sdk) 一 相关下载(1) java JDK下载:进入该网页: http://java.sun.com/javase/downloads/index.jsp (或者直接点击下载)如下图:选择 Download JDK 只下载JDK,无需下载jre. (2)eclipse下载进入该网页: http://www.eclipse.org/downloads
Android开发环境搭建 一 、java jdk安装1.下载并安装Java Jdk;2.配置Java Jdk右击 “我的电脑”->属性->高级->环境变量->系统变量->新建第一步:变量名:JAVA_HOME变量名:C:\jdk1.6.0_10第二步:变量名:classpath变量值:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar第三步:变