- 博客(1076)
- 资源 (3)
- 收藏
- 关注
原创 App Inventor-青少儿编程的利器
学习了Scarcth和App Inventor后,再学习Python,相比学完Scratch后,直接学习Python,学生多了一段学习编程的时间,学习的编程知识更多,电脑使用更熟练,敲代码也能更快点,更有助于学习Python;目前人们使用的手机上App的各种功能,各类文件处理、多媒体、网络功能、蓝牙和wifi等功能,App Inventor都可以实现,还可以实现人们使用的手机上App那样很炫的人机交互图形界面,而且实现方式还很简单,人人都可学会。还学以致用,自己开发App。
2024-05-19 15:18:37
732
原创 App Inventor 免费扩展插件网站
这两个网站里有全世界开发者提供的各种免费插件:http://www.puravidaapps.com/extensions.php https://community.thunkable.com/c/thunkable-extensions
2021-09-21 10:16:16
8053
原创 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
1522
6
原创 《App Inventor 2 定制与二次开发》的配套资源和一些常用扩展插件的下载地址
《App Inventor 2 定制与二次开发》这本书的配套资源和一些常用扩展插件的下载地址:https://github.com/xjbclz/appinventor
2018-11-07 19:46:15
8079
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
5190
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
4832
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
9030
原创 APP开发实战179-Activity消息路由
12.2 Activity消息路由在Android开发中,常遇到多个Activity间的相互通信和调用,这样会导致Acticity间的横向依赖。Activity间的相互通信和调用主要是通过调用startActivity()函数实现的,使用startActivity()的缺点是需要被通知或调用的那个Activity类已经存在,否则无法通过编译,但是在实际的开发工作中,这往往是无法得到满足的。
2017-09-16 11:01:59
7334
原创 AI开发实战10-文件管理器(File)的定制
9 文件管理器(File)的定制App Inventor2内置的文件管理器没有修改文件名和获取文件大小两个常用功能,现修改源码实现这两个功能。文件管理器的源码文件是File.java,在其中增加两个函数: @SimpleFunction(description = "修改文件名") public void Rename(String oldFileName, String newF
2017-08-29 22:29:23
8400
2
原创 APP开发实战178-查看和删除多余的依赖库
Android Studio的“Project”视图显示了一个名为“External libraries”的区域,在这里,可以查看项目使用的所有库,包括任何传递依赖项,如下所示:从这里看到所有模块的依赖库,如想看其中某个模块的依赖库,如想看一下模块liba_odoo_api的依赖库:可以使用如下命令:./gradlew -q :liba_odoo_api:dependencie
2017-08-29 22:08:22
8411
原创 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
8304
原创 AI开发实战8-Web浏览框(WebView)的定制1
7 Web浏览框(WebView)的定制7.1 增加拨号功能目前许多网页上都显示有电话号码,供用户在浏览网页的时候,可以直接拨打电话,但App Inventor2提供的Web浏览框不支持此功能,使用不方便,现修改源码使其支持此功能。Web浏览框额源码文件是WebViewer.java,首先需要在此文件中添加申请拨打电话权限的代码:@UsesPermissions(permissio
2017-08-27 15:48:28
8912
原创 AI开发实战7-列表显示框(Listview)的定制
6 列表显示框(Listview)的定制 AppInventor2提供的列表显示框,用户可以设置是否在其上显示搜索框,但搜索框中显示的提示字符串为英文,可修改为中文。 列表提示框的源码文件是ListView.java,修改的代码如下: //txtSearchBox.setHint("Searchlist..."); txtSearchBox.setHin
2017-08-26 12:08:03
10509
原创 AI开发实战6-图像组件(Image)的定制
5 图像组件(Image)的定制App Inventor2提供的图像组件只支持左右滑动的动画形式,如下所示:现修改代码使其也支持上下滑动的动画形式。图像组件的源码为Image.java,其中有如下代码:/** *Animation property setter method. * * @seeAnimationUtil * * @par
2017-08-23 23:29:55
8313
原创 AI开发实战5-文本输入框(TextBox)的定制2
4.2 增加私有的属性如果想增加只属于文本输入框的属性,如增加一个属性,用户可设置文本输入框只是用于输入电子邮箱,则需要修改TextBox的代码://属性变量private boolean acceptsEmailAddressOnly; /**获取属性值的函数 * EmailAddress property getter method. *
2017-08-23 20:49:00
7751
原创 AI开发实战4-文本输入框(TextBox)的定制1
4 文本输入框(TextBox)的定制4.1增加公共的属性和函数文本输入框也是常使用的组件,App Inventor2提供的组件已经包含了许多属性和函数,但有些常用的属性并未提供。如用户在文本框中输入字符的时候,常会有字符个数限制的,现就开发一个设置字符串长度的属性,以方便使用。App Inventor2默认提供了两种文本输入框:密码输入框和普通的文本输入框,在源码中对应的类分别是
2017-08-22 21:23:48
9254
原创 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
8685
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
12010
原创 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
11502
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
11079
转载 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
12784
原创 从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
21982
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
10642
原创 APP开发实战176-服务器接口的单元测试
31.19 服务器接口的单元测试在APP开发中,往往接口开发和APP开发的进度是并行的,甚至还落后于APP开发,导致在APP端调试接口非常麻烦,如果在APP端能模拟接口调用,那就极大的提高了APP开发和测试的效率。31.19.1 单元测试简介用Android Studio新建工程后,在app的java文件夹中,通常会包含如下三个文件夹:一个是app实际运行使用的代码文件夹,另两个就是单
2017-05-30 22:14:38
11825
原创 APP开发实战175-针对Android7.0及更高版本的后台优化方案
31.18 针对Android7.0及更高版本的后台优化方案 Android 7.0删除了三项隐式广播,以帮助优化内存使用和电量消耗。隐式广播会在后台频繁启动已注册侦听这些广播的应用。删除这些广播可以显著提升设备性能和用户体验。 移动设备会经历频繁的连接变更,例如在 WLAN 和移动数据之间切换时。目前,可以通过在应用清单中注册一个接收器来侦听隐式 CONNECTIVITY_AC
2017-05-21 19:36:37
10504
转载 APP开发实战174-Android7.0的屏幕缩放功能对APP的影响
Android 7.0 支持用户设置显示尺寸,以放大或缩小屏幕上的所有元素,从而提升设备对视力不佳用户的可访问性。用户无法将屏幕缩放至低于最小屏幕宽度 sw320dp,该宽度是 Nexus 4 的宽度,也是常规中等大小手机的宽度。图 3. 右侧屏幕显示的是一台运行 Android 7.0 系统映像的设备增大显示尺寸后的效果。当设备密度发生更改时,系统会以
2017-05-21 17:29:07
13295
原创 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
4995
原创 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
3765
原创 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
4667
原创 APP开发实战170-ABI管理和SO文件的使用简介
23ABI管理23.1 ABI简介不同Android设备使用不同的CPU,因此支持不同的指令集。CPU与指令集的每种组合都有其自己的应用二进制界面(或 ABI)。 ABI可以非常精确地定义应用的机器代码在运行时如何与系统交互。开发者必须为应用要使用的每个 CPU架构指定ABI。 典
2017-05-13 15:56:18
4083
转载 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
2958
转载 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
5517
原创 APP开发实战168-APP快捷图标的功能设计
30.16 APP快捷图标的功能设计30.16.1简介如果APP在Android7.1(API25)或更高级别的系统上运行,在APP中,可以定义一些快捷图标和特定的功能关联起来,这些快捷图标可以显示在支持此功能的桌面上,如下图所示:每个快捷图标可以关联一个或多个intent,让用户快速启动某项功能。例如,可以使用快捷图标启动以下功能: 在地图APP 中可以使用导航用户到一
2017-05-01 22:01:35
3739
原创 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
6162
原创 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
3672
原创 APP开发实战165-利用工具减少APP大小
26.1.4 利用工具减少APP大小1 使用Lint扫描可以发现冗余的代码和资源文件,然后手动删除。2 在APP的build.gradle文件中,进行以下设置:buildTypes { release { //开启混淆功能 minifyEnabled true //编译时移除
2017-04-05 21:36:52
5306
原创 APP开发实战164-Evernote的JobScheduler方案
34.13.2 JobScheduler的替代方案 前面提到,使用JobScheduler时,即使执行任务的条件不满足,任务也会被执行;为了规避这个缺陷,可以使用Evernote提供的库让APP定期执行任务,以下是具体的实现方式。 在build.gradle文件中增加库的依赖:dependencies { … compile 'com.evernote:a
2017-04-03 18:28:18
6490
1
原创 APP开发实战163-JobScheduler介绍
许多APP都需要定期执行某个或某几项任务,如在联网状态下,每隔一段时间上传日志数据给服务器,或在手机处于Idle状态时,定期清理手机的存储空间等。以往实现这样的功能时,往往需要启动一个定时器不断的轮询执行任务的条件是否满足,如果满足还需启动定时器定期执行任务,这种机制的实现方式比较麻烦。34.13.1 JobScheduler介绍在Android5.0(API 21)中,Google提
2017-04-03 18:26:30
3424
原创 APP开发实战162-减少预置图片所占空间大小方法汇总
1 尽量使用Android和iOS系统自带的图片,系统没有的图片,才预置在APP中。 2 减少预置图片的个数,如AndroidAPP可以只预置一套XHDPI密度的图片,只有个别的小图标,如桌面icon,每种密度的都预置一张。iOS APP只预置2X和3X的图片。 3 普通的位图在不同分辩率的设备上伸缩时,很容易变形,APP内常会预置内容一样,但分辨率不同的多张图,解决这个问题,这样
2017-03-25 16:42:28
6509
原创 APP开发实战161-图片格式的选择
针对不同内容的图片,选择不同的格式:具有丰富多彩颜色的图片用JPG格式比PNG格式具有更高的压缩率,图片所占空间更小;具有比较单调颜色的图片,采用PNG格式比JPG格式所占的空间更小。如下图所示,左边的图片颜色比较丰富,右边的图片颜色比较单调:之前已经介绍过,WebP格式的图片比PNG和JPG格式的图片所占空间都小,所以优先考虑使用WebP格式的图片,就使用WebP格式。具体选择哪
2017-03-25 15:55:26
2648
代码排版和文件处理工具
2010-05-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人