自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(1075)
  • 资源 (3)
  • 收藏
  • 关注

原创 App Inventor 免费扩展插件网站

这两个网站里有全世界开发者提供的各种免费插件:http://www.puravidaapps.com/extensions.php https://community.thunkable.com/c/thunkable-extensions

2021-09-21 10:16:16 7186

原创 App Inventor增加jar库文件

在appinventor/lib文件夹中新建一个文件夹,把新增的库文件放到文件夹中,如下:.../appinventor-sources/appinventor/lib/jsoup修改build.xml文件,参考添加json.jar的代码,有添加json.jar的地方,都添加新增库文件的代码:.../appinventor-sources/appinventor/buildserver/b...

2019-01-26 11:49:30 1463 6

原创 《App Inventor 2 定制与二次开发》的配套资源和一些常用扩展插件的下载地址

《App Inventor 2 定制与二次开发》这本书的配套资源和一些常用扩展插件的下载地址:https://github.com/xjbclz/appinventor

2018-11-07 19:46:15 7938 3

原创 新书上市:App Inventor2定制与二次开发

京东:http://item.jd.com/12380450.html当当:http://product.dangdang.com/25289290.html亚马逊:https://www.amazon.cn/dp/B07D5952X5/ref=sr_1_1?ie=UTF8&qid=1528527698&sr=8-1&keywords=App+Inventor2%E5%...

2018-06-09 15:44:36 5090 4

原创 新书上市:Android APP开发实战 从规划到上线全程详解

https://item.jd.com/28649240718.htmlhttp://product.dangdang.com/25282490.html https://www.amazon.cn/dp/B07D4ZPMGJ/ref=sr_1_5?s=books&ie=UTF8&qid=1527770243&sr=1-5&keywords=android+app

2018-05-31 21:35:57 4820 1

原创 AI开发实战11-加密功能插件的开发

20.1.1 插件的实现首先需要建立存放插件源码的文件夹:/appinventor/components/src/com/qz/extensions然后创建源码文件Encryption.java,其中的代码如下://插件的包名,通常是三段式com. + 功能描述. + extensionpackage com.encryption.extension;    imp

2017-09-16 11:20:09 9009

原创 APP开发实战179-Activity消息路由

12.2 Activity消息路由在Android开发中,常遇到多个Activity间的相互通信和调用,这样会导致Acticity间的横向依赖。Activity间的相互通信和调用主要是通过调用startActivity()函数实现的,使用startActivity()的缺点是需要被通知或调用的那个Activity类已经存在,否则无法通过编译,但是在实际的开发工作中,这往往是无法得到满足的。

2017-09-16 11:01:59 7324

原创 AI开发实战10-文件管理器(File)的定制

9 文件管理器(File)的定制App Inventor2内置的文件管理器没有修改文件名和获取文件大小两个常用功能,现修改源码实现这两个功能。文件管理器的源码文件是File.java,在其中增加两个函数: @SimpleFunction(description = "修改文件名") public void Rename(String oldFileName, String newF

2017-08-29 22:29:23 8365 2

原创 APP开发实战178-查看和删除多余的依赖库

Android Studio的“Project”视图显示了一个名为“External libraries”的区域,在这里,可以查看项目使用的所有库,包括任何传递依赖项,如下所示:从这里看到所有模块的依赖库,如想看其中某个模块的依赖库,如想看一下模块liba_odoo_api的依赖库:可以使用如下命令:./gradlew -q :liba_odoo_api:dependencie

2017-08-29 22:08:22 8337

原创 AI开发实战9-Web浏览框(WebView)的定制2

7.2 返回键功能的处理用App Inventor2开发的App,组件都是依附在Screen上,用户点击按键,也是Screen先接收按键事件,对于返回键的处理代码如下(在Form.java中):@Override public boolean onKeyDown(int keyCode, KeyEvent event) {   if (keyCode == KeyEvent.KEY

2017-08-27 15:49:33 8267

原创 AI开发实战8-Web浏览框(WebView)的定制1

7 Web浏览框(WebView)的定制7.1 增加拨号功能目前许多网页上都显示有电话号码,供用户在浏览网页的时候,可以直接拨打电话,但App Inventor2提供的Web浏览框不支持此功能,使用不方便,现修改源码使其支持此功能。Web浏览框额源码文件是WebViewer.java,首先需要在此文件中添加申请拨打电话权限的代码:@UsesPermissions(permissio

2017-08-27 15:48:28 8877

原创 AI开发实战7-列表显示框(Listview)的定制

6 列表显示框(Listview)的定制     AppInventor2提供的列表显示框,用户可以设置是否在其上显示搜索框,但搜索框中显示的提示字符串为英文,可修改为中文。    列表提示框的源码文件是ListView.java,修改的代码如下:    //txtSearchBox.setHint("Searchlist...");     txtSearchBox.setHin

2017-08-26 12:08:03 10431

原创 AI开发实战6-图像组件(Image)的定制

5 图像组件(Image)的定制App Inventor2提供的图像组件只支持左右滑动的动画形式,如下所示:现修改代码使其也支持上下滑动的动画形式。图像组件的源码为Image.java,其中有如下代码:/**   *Animation property setter method.   *   * @seeAnimationUtil   *   * @par

2017-08-23 23:29:55 8286

原创 AI开发实战5-文本输入框(TextBox)的定制2

4.2 增加私有的属性如果想增加只属于文本输入框的属性,如增加一个属性,用户可设置文本输入框只是用于输入电子邮箱,则需要修改TextBox的代码://属性变量private boolean acceptsEmailAddressOnly; /**获取属性值的函数       * EmailAddress property getter method.       *

2017-08-23 20:49:00 7733

原创 AI开发实战4-文本输入框(TextBox)的定制1

4 文本输入框(TextBox)的定制4.1增加公共的属性和函数文本输入框也是常使用的组件,App Inventor2提供的组件已经包含了许多属性和函数,但有些常用的属性并未提供。如用户在文本框中输入字符的时候,常会有字符个数限制的,现就开发一个设置字符串长度的属性,以方便使用。App Inventor2默认提供了两种文本输入框:密码输入框和普通的文本输入框,在源码中对应的类分别是

2017-08-22 21:23:48 9132

原创 AI开发实战3-定制自己的Screen

3 Screen的定制    Screen可以说是App Inventor开发的最基础组件了,其对应的源码在/appinventor/components/src/com/google/appinventor/components/runtime/Form.java使用App Inventor开发的APP,都用两个功能菜单:Stopthis application和About thisap

2017-08-20 14:12:43 8666 1

原创 AI开发实战2-定制自己的AI伴侣

2 App Inventor2 Companion的定制    用ant命令编译App Inventor的源码后,在appinventor/build/buildserver文件夹里会生成AI伴侣APP:MIT AI2 Companion.apk    AI伴侣的源文件在appinventor的aiplayapp文件夹中,包含了以下几个文件夹:    assets——包含了App

2017-08-20 13:45:01 11921

原创 AI开发实战1-App Inventor的编译

1 App Inventor的编译编译AppInventor需要使用ant,在项目的GitHub上https://github.com/mit-cml/appinventor-sources有如下说明:Youwill need a full Java JDK (6 or 7, preferably from Oracle; JRE is not enough)and Python to c

2017-08-19 21:12:24 11437 2

原创 APP开发实战177-Autosizing TextViews(自动调整文字大小的TextViews)

自动调整文字大小的TextViews Android O允许开发人员制定TextView,可以基于TextView的特性和边界布局自动放到文字或缩小文字以填充布局空间。这使得更容易依据不同尺寸的屏幕和不同的文本内容优化文字尺寸。从26.0 Beta版的支持库开始,支持此功能运行在装了Android O之前的系统的设备上。这个库支持Android4.0(API level 14)及更高的

2017-06-29 23:06:51 11058

转载 OkHttp实现分析之Websocket

转自:https://www.wolfcstech.com/2017/02/23/OkHttp%E5%AE%9E%E7%8E%B0%E5%88%86%E6%9E%90%E4%B9%8BWebsocket/?utm_source=tuicool&utm_medium=referralHTML5 拥有许多引人注目的新特性,WebSocket就是其中之一。WebSocket一向有

2017-06-24 22:05:02 12735

原创 从Gitlab中导出issue到Excel文件中

gitlab中的issue管理模块功能很弱,连把issue导出到excel表格中的功能都没有,需要使用者自己实现。gitlab提供了API接口可以对gitlab里的数据进行各种操作,对应的说明文档网址为:https://docs.gitlab.com/ce/api/可以利用gitlab提供的API接口实现导出某个project的issue功能。1 首先要获取gitlab里所有group

2017-06-11 18:56:56 21810 5

转载 像大牛一样写代码: 31个Android 开发者工具

原文:Code like a pro: 31 tools for Android app developers。文中部分工具是收费的,但是绝大多数都是免费的。FlowUp这是一个帮助你跟踪app整体性能的工具,深入分析关键的性能数据如FPS, 内存, CPU, 磁盘, 等等。FlowUp根据用户数量收费。Stetho由Facebook开发的一个强大的

2017-06-03 17:44:39 10632

原创 APP开发实战176-服务器接口的单元测试

31.19 服务器接口的单元测试在APP开发中,往往接口开发和APP开发的进度是并行的,甚至还落后于APP开发,导致在APP端调试接口非常麻烦,如果在APP端能模拟接口调用,那就极大的提高了APP开发和测试的效率。31.19.1 单元测试简介用Android Studio新建工程后,在app的java文件夹中,通常会包含如下三个文件夹:一个是app实际运行使用的代码文件夹,另两个就是单

2017-05-30 22:14:38 11811

原创 APP开发实战175-针对Android7.0及更高版本的后台优化方案

31.18 针对Android7.0及更高版本的后台优化方案   Android 7.0删除了三项隐式广播,以帮助优化内存使用和电量消耗。隐式广播会在后台频繁启动已注册侦听这些广播的应用。删除这些广播可以显著提升设备性能和用户体验。    移动设备会经历频繁的连接变更,例如在 WLAN 和移动数据之间切换时。目前,可以通过在应用清单中注册一个接收器来侦听隐式 CONNECTIVITY_AC

2017-05-21 19:36:37 10488

转载 APP开发实战174-Android7.0的屏幕缩放功能对APP的影响

Android 7.0 支持用户设置显示尺寸,以放大或缩小屏幕上的所有元素,从而提升设备对视力不佳用户的可访问性。用户无法将屏幕缩放至低于最小屏幕宽度 sw320dp,该宽度是 Nexus 4 的宽度,也是常规中等大小手机的宽度。图 3. 右侧屏幕显示的是一台运行 Android 7.0 系统映像的设备增大显示尺寸后的效果。当设备密度发生更改时,系统会以

2017-05-21 17:29:07 13263

原创 APP开发实战173-ActionBar资源文件的生成工具

ActionBar在APP中得到了广泛使用,有一款在线工具:Android Action Bar Style Generator,可以根据用户的设置,自动生成各种风格的ActionBar资源文件,包括XML文件和图标文件,有效的提高了开发效率,链接如下:http://jgilfelt.github.io/android-actionbarstylegenerator/#name=example

2017-05-20 17:36:37 4990

原创 APP开发实战172-统计APP启动时间的方法

从Android4.4(API19)开始,logcat输出日志的时候,会输出一行内容,其中包含Displayed字符串,这行内容表示从启动到完成绘制屏幕上相应活动的过程中APP所花费的时间量,包含以下时间:1 启动进程2 初始化对象3 创建和初始化Activity4 布局5 第一次绘制APP界面这行显示的内容如下所示:05-15 17:01:11.024 1584-18

2017-05-15 22:08:41 3746

原创 APP开发实战171-使用APK Analyzer分析APP

27.1.4 使用APK Analyzer分析APP27.1.4.1 APK Analyzer简介Android Studio自带了一个APK分析工具:APK Analyzer,可以使用它查看编译后的APK文件的组成,可用于解决APP中的DEX文件和资源文件问题,也有助于减少APK的所占的存储空间。使用APK Analyzer,开发人员可以:    查看APK中包含的文件的绝对和相

2017-05-14 15:16:33 4631

原创 APP开发实战170-ABI管理和SO文件的使用简介

23ABI管理23.1 ABI简介不同Android设备使用不同的CPU,因此支持不同的指令集。CPU与指令集的每种组合都有其自己的应用二进制界面(或 ABI)。 ABI可以非常精确地定义应用的机器代码在运行时如何与系统交互。开发者必须为应用要使用的每个 CPU架构指定ABI。                                                      典

2017-05-13 15:56:18 4060

转载 Websocket 基础篇

转自:https://www.qcloud.com/community/article/142731?fromSource=gwzcw.116656.116656.116656一、理解 socket , tcp , websocket, http 的联系和区别socketsocket 是应用层与 TCP/IP 协议族通信的中间软件抽象层,它是一组接口

2017-05-13 15:54:43 2943

转载 APP开发实战169-屏幕纵横比的参数设置

为给用户带来更具吸引力的观看体验,许多 Android 原始设备制造商 (OEM) 推出超宽屏智能手机,如Samsung Galaxy S8采用纵横比达 18.5:9 的全新显示屏,LG G6采用纵横比达 18:9 的超宽显示屏。(左图)18.5:9 设备上最大纵横比设置为 16:9 的应用(右图)18.5:9 设备上最大纵横比设置为 18.5:9 的应用为了充分利用这些设备上更大

2017-05-07 15:46:06 5476

原创 APP开发实战168-APP快捷图标的功能设计

30.16 APP快捷图标的功能设计30.16.1简介如果APP在Android7.1(API25)或更高级别的系统上运行,在APP中,可以定义一些快捷图标和特定的功能关联起来,这些快捷图标可以显示在支持此功能的桌面上,如下图所示:每个快捷图标可以关联一个或多个intent,让用户快速启动某项功能。例如,可以使用快捷图标启动以下功能:    在地图APP 中可以使用导航用户到一

2017-05-01 22:01:35 3722

原创 APP开发实战167-开机自启动的功能设计

30.15 开机自启动的功能设计30.15.1 普通模式对于Android7.0之前的系统,如果设计APP在系统启动之后自启动,只需在APP添加处理ACTION_BOOT_COMPLETED广播消息的代码即可。30.15.2直接启动模式从Android7.0开始,系统有了一种新的启动模式“直接启动”模式,针对这种模式需要做特别处理。    当设备已开机但用户尚未解锁设备时,An

2017-04-30 16:42:21 6148

原创 APP开发实战166-全屏模式的功能设计

30.14 全屏模式的功能设计    APP的许多场景需要全屏展示内容,如播放视频、浏览图片和阅读书籍时等场景。从Android4.4开始,Android系统提供了2种方案让APP进入全屏模式:Lean Back和Immersive。使用这2种方案时,Action Bar、Status Bar和Navigation Bar都会被隐藏,不同之处在于让它们再重新显示出来的操作方式。30.14.

2017-04-22 22:35:42 3657

原创 APP开发实战165-利用工具减少APP大小

26.1.4 利用工具减少APP大小1 使用Lint扫描可以发现冗余的代码和资源文件,然后手动删除。2 在APP的build.gradle文件中,进行以下设置:buildTypes {        release {            //开启混淆功能            minifyEnabled true            //编译时移除

2017-04-05 21:36:52 5297

原创 APP开发实战164-Evernote的JobScheduler方案

34.13.2 JobScheduler的替代方案    前面提到,使用JobScheduler时,即使执行任务的条件不满足,任务也会被执行;为了规避这个缺陷,可以使用Evernote提供的库让APP定期执行任务,以下是具体的实现方式。 在build.gradle文件中增加库的依赖:dependencies {    …    compile 'com.evernote:a

2017-04-03 18:28:18 6476 1

原创 APP开发实战163-JobScheduler介绍

许多APP都需要定期执行某个或某几项任务,如在联网状态下,每隔一段时间上传日志数据给服务器,或在手机处于Idle状态时,定期清理手机的存储空间等。以往实现这样的功能时,往往需要启动一个定时器不断的轮询执行任务的条件是否满足,如果满足还需启动定时器定期执行任务,这种机制的实现方式比较麻烦。34.13.1 JobScheduler介绍在Android5.0(API 21)中,Google提

2017-04-03 18:26:30 3410

原创 APP开发实战162-减少预置图片所占空间大小方法汇总

1 尽量使用Android和iOS系统自带的图片,系统没有的图片,才预置在APP中。 2 减少预置图片的个数,如AndroidAPP可以只预置一套XHDPI密度的图片,只有个别的小图标,如桌面icon,每种密度的都预置一张。iOS APP只预置2X和3X的图片。 3 普通的位图在不同分辩率的设备上伸缩时,很容易变形,APP内常会预置内容一样,但分辨率不同的多张图,解决这个问题,这样

2017-03-25 16:42:28 6495

原创 APP开发实战161-图片格式的选择

针对不同内容的图片,选择不同的格式:具有丰富多彩颜色的图片用JPG格式比PNG格式具有更高的压缩率,图片所占空间更小;具有比较单调颜色的图片,采用PNG格式比JPG格式所占的空间更小。如下图所示,左边的图片颜色比较丰富,右边的图片颜色比较单调:之前已经介绍过,WebP格式的图片比PNG和JPG格式的图片所占空间都小,所以优先考虑使用WebP格式的图片,就使用WebP格式。具体选择哪

2017-03-25 15:55:26 2634

原创 APP开发实战160-WebP格式图片简介

23.1.2WebP格式介绍WebP是Google发明的一种图片文件格式,这种格式的图片既可以像JPEG格式的图片那样实现有损压缩,也可以像PNG格式的图片那样具有透明度特性,但这种格式可以提供比JPEG或PNG格式更好的压缩效果。无损压缩的WebP格式图片比PNG格式的图片占据的存储空间要小26%;有损压缩的WebP格式图片比具有相同结构相似性(SSIM)的JPEG格式图片占据的存储

2017-03-25 15:50:56 2131

代码排版和文件处理工具

此工具可以对选定文件夹中的文件进行排版操作,免除人工排版之苦。 在选定文件夹的文件中查找指定的目标字符串,并打印出行号,不需要借助资源管理器,提高了搜索效率。 对文件夹连续进行复制、压缩和删除操作,实现文件操作的自动化。

2010-05-24

PCMTP2.0.rar

此工具,可以作为手机串口调试工具,也可以用作手机自动测试工具,以代替人工测试,节约测试时间,提高工作效率,尤其是需要重复多次测试某项功能时。

2010-04-26

CodeGen2.0

可以自动生成MTK平台菜单代码、data account 数组代码、wap和mms profile数组代码以提高工作效率

2010-04-26

空空如也

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

TA关注的人

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