-
安卓程序设计代码问题
2016-11-22 08:50:43编写程序时第13行有错,错误提示为main cannot be resolved or is not a field,上网查了下说是因为系统自动生成了import Android R,但是我的代码里没有这个。 MainActivity Java ![图片说明]... -
安卓聊天程序源代码
2016-10-04 10:31:45使用图灵机器人的api开发设计的一个聊天程序的源代码,里面有apk安装文件,可以直接使用,适合有一定能力的初学者学习 -
安卓UI设计对安卓程序的影响
2017-03-14 20:19:20安卓中,对于用户来说最重要的也许并不是那些晦涩难懂的代码,而是这个Android UI设计的是否整洁,简明扼要的描述出自己的代码的功能以及应用。 我们这一节课就是来学习一下安卓UI设计的及基础入门。以及自己在实际...安卓中,对于用户来说最重要的也许并不是那些晦涩难懂的代码,而是这个Android UI设计的是否整洁,简明扼要的描述出自己的代码的功能以及应用。
我们这一节课就是来学习一下安卓UI设计的及基础入门。
首先,我们可以先创建一个名为“手机信息页面”的程序,该程序用于展示手机设置页面的信息。
实现的过程大体如下:
1)将准备好的八个图标复制到res/drawable文件夹下
2)创建一个垂直的线性布局,并在线性布局中创建4个相对布局
3)在相对布局中添加相应的TextView
4)在values文件下的style.xml文件中存放抽取出来的样式
5)创建values-zh-rCN、values-en-rUS文件夹,并在文件夹中创建strings.xml文
具体做法以及步骤如下:.程序界面对应布局文件activity_mian.xml如下所示:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"//适配屏幕的宽度
android:layout_height="match_parent"//适配屏幕的高度
android:background="@android:color/darker_gray"
android:orientation="vertical"
tools:context=".MainActivity" >
<RelativeLayout style="@style/h_wrap_content"
android:layout_marginTop="10dp">
<TextView
style="@style/tv_style"
android:layout_alignParentLeft="true"
android:layout_marginLeft="10dp"
android:drawableTop="@drawable/clound"
android:text="@string/_cloud" />
<TextView
style="@style/tv_style"
android:layout_alignParentRight="true"
android:layout_marginRight="10dp"
android:drawableTop="@drawable/bluetooth"
android:text="@string/_bluetooth" />
</RelativeLayout>
<RelativeLayout style="@style/h_wrap_content"
android:layout_marginTop="10dp">
<TextView
style="@style/tv_style"
android:layout_alignParentLeft="true"
android:layout_marginLeft="10dp"
android:drawableTop="@drawable/gesture"
android:text="@string/_gesture" />
<TextView
style="@style/tv_style"
android:layout_alignParentRight="true"
android:layout_marginRight="10dp"
android:drawableTop="@drawable/gps"
android:text="@string/_gps" />
</RelativeLayout> //这几段代码都是对界面中对应的摁钮进行描述的文件,可以更改为自己喜欢的
<RelativeLayout style="@style/h_wrap_content"
android:layout_marginTop="10dp">
<TextView
style="@style/tv_style"
android:layout_alignParentLeft="true"
android:layout_marginLeft="10dp"
android:drawableTop="@drawable/info"
android:text="@string/_system_info" />
<TextView
style="@style/tv_style"
android:layout_alignParentRight="true"
android:layout_marginRight="10dp"
android:drawableTop="@drawable/internet"
android:text="@string/_internet" />
</RelativeLayout>
<RelativeLayout style="@style/h_wrap_content"
android:layout_marginTop="10dp">
<TextView
style="@style/tv_style"
android:layout_alignParentLeft="true"
android:layout_marginLeft="10dp"
android:drawableTop="@drawable/language"
android:text="@string/_language" />
<TextView
style="@style/tv_style"
android:layout_alignParentRight="true"
android:layout_marginRight="10dp"
android:drawableTop="@drawable/notifycation"
android:text="@string/_set_notifycation" />
</RelativeLayout>
</LinearLayout>
实施国际化之后的样式
(2)抽取样式
由于编写布局文件时,相同控件之间的外边距和宽高都是固定的。因此会产生大量重复的布局代码,为了代码简洁和重复使用可以将相同代码抽取为样式单独放在一个style.xml文件中。style.xml文件如下所示:
<resources>
<style name="AppBaseTheme" parent="android:Theme.Light">
</style>
<style name="AppTheme" parent="AppBaseTheme">//这些文件都可以重复进行引用,省下了重复输入的麻烦
</style>
<!-- 宽 match——parent 高 wrap_content-->
<style name="h_wrap_content">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>
</style>
<!-- 宽高都 match——parent -->
<style name="tv_style">
<item name="android:layout_width">145dp</item>
<item name="android:layout_height">90dp</item>
<item name="android:gravity">center</item>
<item name="android:paddingTop">8dp</item>
<item name="android:paddingBottom">8dp</item>//这些都是对相应子选项描述的的文件,可以自己进行更改描述
<item name="android:drawablePadding">5dp</item>
<item name="android:background">@android:color/white</item>
</style>
</resources>
(3)创建values-zh-rCN、values-en-rUS文件夹
在res目录下创建values-zh-rCN、values-en-rUS文件夹,并在这两个文件夹下创建相应的strings.xml文件。
values-zh-rCN文件夹下的strings.xml文件如下所示:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">手机信息页面</string>
<string name="menu_settings">设置</string>
<string name="hello_world">你好,世界!</string>
<string name="_cloud">云通信</string>
<string name="_bluetooth">蓝牙</string>
<string name="_gesture">自定义手势</string>
<string name="_gps">定位</string>
<string name="_system_info">系统信息</string>
<string name="_internet">网络</string>
<string name="_language">语言设置</string>
<string name="_set_notifycation">通知栏设置</string>
</resources>
values-en-rUS文件夹下的strings.xml文件如下所示:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">phoneInfo</string>
<string name="menu_settings">Settings</string>
<string name="hello_world">Hello world!</string>
<string name="_cloud">Cloud</string>//上面这两段代码就是你安卓程序的国际化,采用了对应的语言进行更改。
以上的代码来自于我们老师,在实际运行过程中,要注意有一些自己默认的选项需要更改,还有对相关文件的引用掌握的不太熟练,导致运行失败。要在自己的运行相关的程序之后,找到对应的解决办法。可能做这个UI设计会很累,但你找到相应的乐趣之后一定会迷上它的!
-
安卓android指南针程序源代码
2020-09-29 05:02:18Android指南针程序源代码代码介绍:指南针程序页面设计的很漂亮只在将它装进手机就不用担心会迷路了,而且源代码的代码风格还好,易读性可想而知非常。而且从代码中可以很容易明 -
小米手机自带红外传感器安卓应用程序代码
2017-03-08 11:36:45本次设计使用的安卓手机内置红外发射设备,红外发射传感器使用NEC协议。由于红外属于系统硬件传感器,所以要获得系统红外服务。ConsumerIrManager mCIR=(ConsumerIrManager) getSystemService(Context.CONSUMER_IR_...目前国内已经有少部分安卓智能手机配备了无线红外传感器,红外传感器仅支持安卓API19的安卓系统。本次设计使用的安卓手机内置红外发射设备,红外发射传感器使用NEC协议。由于红外属于系统硬件传感器,所以要获得系统红外服务。
ConsumerIrManager mCIR=(ConsumerIrManager) getSystemService(Context.CONSUMER_IR_SERVICE);//获取红外服务
mCIR.transmit(38000, CodeLite.pattern);
调用的是红外发射函数API,38000为载波频率,CodeLite.pattern为红外编码,CodeLite.pattern为一个整型数组,整型数组变量值单位为us。
例如一个用户码为0x00,用户反码为0xFF,控制码为104,控制反码为97的红外pattern编码为:
public static intpattern1[]={9000,4500,560,560,560,560,560,560,560,560,560,560,560,560,560,560,560,560,560,
1690,560,1690,560,1690,560,1690,560,1690,560,1690,560,1690,560,1690,
560,560,560,1690,560,1690,560,560,560,1690,560,560,560,560,560,560,
560,1690,560,560,560,560,560,1690,560,560,560,1690,560,1690,560,1690,560,39980, 9000,2500,560};
在编码中逻辑电平“0”表示(560,560);逻辑电平“1”表示(560,1690);
无码表示(560, 39980);重复码表示为(9000,2500,560);源程序CSDN下载链接:http://download.csdn.net/detail/aa1094143832/9773911
我的博客即将入驻“云栖社区”,诚邀技术同仁一同入驻。
-
安卓程序与设计 app开发 校园点餐(类似饿了么)
2018-12-18 10:31:29大二上学期选了《安卓程序与设计》这门课,看了《安卓应用开发教程》视频书籍,跟着学长学姐们完成了该项目,其中也有老师的指导。程序含完整运行的app代码,连接了数据库,能搭建后台服务器,实现了账号登陆、注册... -
安卓移动应用代码安全加固系统设计及实现
2021-01-05 17:48:19安卓平台已经逐渐成为最受欢迎的移动终端操作...介绍了Android系统的安全风险及加固的核心技术,据此提出了一种安卓应用程序的安全加固系统,设计和实现了基于代码混淆的加固技术,从而达到了移动应用安全加固的目的。往期推荐
需要相关资料的朋友,可以【加入此处即可打包获取】
安卓平台已经逐渐成为最受欢迎的移动终端操作系统,基于安卓系统的软件应用数量众多,同时安全威胁也在不断增加。介绍了Android系统的安全风险及加固的核心技术,据此提出了一种安卓应用程序的安全加固系统,设计和实现了基于代码混淆的加固技术,从而达到了移动应用安全加固的目的。
安卓系统安全风险
在Android应用软件迅速发展的同时,Android用户也面临着许多威胁。常见的恶意威胁如下:
1、恶意扣费
移动应用威胁中最常见的恶意行为是恶意扣费。威胁手段包括用户在不知晓或者不知情的情况下,擅自使用非法手段让用户订购各种收费,活在无意识状态下使用手机支付服务的情况下,它会屏蔽服务短信发送回服务提供商,破坏系统的正常功能。
2、隐私窃取
隐私窃取是近年来流行的一种应用威胁,它是用户不知道的情况下擅自窃取用户的秘密信息。该病毒感染手机后,开始窃取用户隐私信息的背景,包括通话记录、短信内容、地理位置、通讯录、浏览器历史记录信息,然后通过病毒上传信息到远程服务器被黑客控制。如果用户在手机上有网络支付和其他行为,该账户的隐私也将是一个严重的威胁。
3、远程控制
病毒会自动在后台引导载人,并在用户不知道或不授权的情况下与服务器连接。进一步,通过与服务器交互,在没有权限的情况下对受害手机进行控制,从而进一步扣除费用,下载恶意软件和其他恶意行为。
4、资源消耗
在用户不知道或者不授权的情况下,导致用户收费的损失,自动发送短信、多媒体短信、电子邮件、网络连接等。
5、恶意通信
在用户不知道或者不授权的情况下,传播病毒或木马本身,使得它的衍生工具或者其他移动互联网恶意代码可以通过其进行复制、感染或者提供下载。
6、其他
病毒在后台大量下载软件,并消耗用户手机流量,或者执行一些更耗电的操作来消耗手机的功率,从而影响正常手机通信。
几维安全安卓加固系统的实现
1、防逆向保护
针对Android应用的Java、C、C++代码采取混淆、虚拟化、加壳等安全保护措施,防止攻击者通过逆向手段反编译Dex和So文件。同时满足等保2.0中的数据保密性保护要求:应采取加密、混淆等措施,对移动应用程序进行保密性保护,防止被反编译。
2、Dex文件加壳
Dex文件加壳可以防止dex2Jar、Apktool、AndroidKiller、JEB等逆向工具反编译Dex文件,从而避免Java代码被恶意分析、核心技术被窃取。Dex文件加壳基于类加载的方式实现,对Classes.dex文件进行整体加密,并拆解存放在APK的资源中,在APP应用运行时先在内存中解密Classes.dex,并让Dalvik虚拟机动态加载Dex并开始执行。
效果对比:
利用JEB反编译原始Dex文件效果如下,可以清晰看到原始的Java代码。
利用JEB反编译已加密Dex文件效果如下,只能看到kiwivm壳的代码,无法查看原始Java代码。
3、Dex-Java2C保护
Dex-Java2C是针对Java函数进行深度加密,将Java自动化翻译为C代码,并进行Native层的虚拟化加密,相比Dex文件加壳粒度更细,安全更高。攻击者无法还原Java函数,从而避免关键Java代码被恶意分析、核心技术被窃取。
Dex-Java2C基于LLVM编译器实现,利用复杂的处理流程将Android-Dex指令代码转换成LLVM-IR,然后利用LLVM后端编译器直接生成【或者与代码虚拟化配合使用】Native指令。该方案的转换是不可逆的,从根本上让逆向工程不具备可行性,从达到保护关键Java代码的目的。
效果对比:
利用JEB反编译原始Dex文件效果如下,可以清晰看到原始的Java代码的函数体。
4、So文件加壳
So文件加壳可以防止IDA、ghidra等逆向工具的反编译分析,从而避免C/C++代码被恶意分析,核心技术被窃取。So文件加壳技术与Windows平台的加壳技术类似,利用特殊的算法对文件进行加密处理、抹掉ELF格式中的关键节区描述数据,并行文件压缩存储,从而造成IDA等工具解析失败,达到防反编译,保护C/C++代码的目的。
效果对比
采用IDA工具反编译未加壳的So文件,可以看到相关的函数信息。
采用IDA工具反编译已加壳的So文件,出现解析错误,造成反编译失败
几维安全安卓加固技术优势
1、安全覆盖全面
能够保护应用Dex文件和So文件,并且提供主动防御保护机制,全面保护APP安全;
2、安全强度高
独家Dex-Java2C和源码虚拟化技术配合使用,对Java代码进行高强度加密,可抵挡专业黑客的逆向攻击;
3、加密粒度细
以Java/C/C++代码的函数为单位进行加密保护,粒度细、可控性高、隐蔽性强;
4、兼容性高
适配APP内的各种业务逻辑,并且高级版的Java2C通过中间代码进行加密保护,兼容性与原始应用一致;
5、性能损耗低
Dex加壳方案的启动时间增量小于1s,是业界做得最好的方案。Java函数级加密影响非常小,可以忽略不计。
Android 开发人员已经为广大用户开发出海量的应用程序,这给用户带来方便的同时也带来了巨大的安全隐患。几维安全在长期的攻防实战之中推出了一站式、全生命周期移动安全解决方案,面对中小企业免费提供APP检测与加固服务,登录几维安全官网即可免费申请使用。
如果你也对安卓逆向感兴趣。可以加入下方的群,大家一起讨论问题,或者扫描下方二维码关注公众号,关注回复 “安卓逆向” 获取免费教程
安卓逆向交流学习 Q群:876526335
vx:yijin_LX -
基于安卓手机蓝牙控制的智能小车设计.zip_智能小车蓝牙控制代码程序
2021-01-06 22:26:22本课题研究的是基于安卓手机蓝牙控制的智能小车设计,基于手机平台,借助于蓝牙技术,设计和实现了一种无线遥控小车新的解决方案。设计以手机控制平台、蓝牙通讯模块、电机驱动模块等硬件模块组成的遥控小车。实现小车... -
基于安卓Android小型仓库管理系统APP的设计与实现(MySQL)(含录像)(毕业论文9000字,安卓APP客户端和JAVA...
2018-08-30 22:24:10基于安卓Android小型仓库管理系统APP的设计与实现(MySQL)毕业论文9000字,安卓APP客户端和JAVA服务端程序代码 -
五邑大学安卓开发程序设计报告_2016秋C语言程序设计(五邑大学)
2021-01-17 11:33:53Q:如何提问,能得到快速的解答?...3)附源代码:把源码贴到讨论区(不要使用图片,因为图片看不清,也不能拷贝),这样大家可以通过你贴出的源码帮你分析错在哪里。4)附错误提示:把编译出错的提示也贴出...Q:如何提问,能得到快速的解答?
A:
1)标题:撰写标题时,要注意把要问的问题的出处和核心词写出来,最好用【】标出来,比如【第1周编程题在线测试的第1题】求解。
2)内容:内容上要把你不懂的地方说出来,最好详细点,把自己尝试修改的过程也说一下。
3)附源代码:把源码贴到讨论区(不要使用图片,因为图片看不清,也不能拷贝),这样大家可以通过你贴出的源码帮你分析错在哪里。
4)附错误提示:把编译出错的提示也贴出来(一般是英文形式),这样大家不用拷贝粘贴和调试程序也能帮你分析出错原因了。
Q:常见的运行结果错误的原因有哪些?
A:程序提交后通常显示三类错误:格式错误、结果错误、运行超时。
对于格式错误,请检查你的程序的输入输出信息是否和题目要求的完全一致。
对于结果错误,请检查你的程序使用的算法和计算公式是否正确。
对于运行超时错误,请检查你的程序是否存在死循环,死循环通常由永真的循环控制条件或者while后面添加了不必要的分号引起。
注意事项如下:
1)数据输入输出的格式没有严格按照题目的要求写,直接拷贝粘贴题目中给的格式字符串和提示信息,是最简单和不易出现格式错误的方法。
2)输入输出字符串中的字符大小写有错误,或者空格数量和位置与题目中的要求不一致,或者缺少换行等。
3)仔细审题,例如题目要求计算半圆的周长,就不要加上直径,更不要计算整个圆的周长。
4)如果只有几个测试用例通过,还有没有通过的测试用例,那么说明你没有考虑所有的可能性,甚至是非法输入的情况。
5)检查是否为英文输入,切记切换成英文状态再输入。一些同学误用了中文作为输入法,就会出现不能编译的问题,例如中文状态下输入的分号和英文状态下输入的分号是完全不同的,语句的末尾使用的分号一定要在英文状态下输入。
Q:我想考二级,学完这个课程可以考吗?
A:二级考试题考查语言的语法细节较多,所以能否通过二级考试,要看你的应试水平如何。本课侧重于讲解程序设计的方法以及错误程序的排错方法,更关注实战能力,因此应该说本课程对学生的要求是高于二级考试的要求的。
Q:上机编写C语言程序使用什么软件好?
A:课程演示会使用Dev-c++集成开发环境,但是你使用任何其他C语言开发工具也都可以。它是一个跨平台的C/C++集成开发环境,它安装简单,比Visual C 6.0等其他集成开发环境更简单易学。
Q:为什么我的程序无法运行,显示cannot open output file bin\Debug\election.exe Permission denied.
A:可能是你的文件正在别的程序中使用,或者还有程序的副本正在执行(或者你上次运行没有关闭),因此不能写入election.exe,把副本关闭或者结束election.exe任务应该就能够纠正这个问题。
Q:为什么我的程序与网站上的程序运行结果中的小数点最后一位存在差异?
A:这是因为网站的OJ使用的操作系统和编译器与我们自己使用的操作系统和编译器不一样,从而导致浮点运算的精度不一致。
此外,使用float和double定义变量得到的计算结果也可能在结果的最后一位小数上有所不同。
-
备忘录安卓软件源代码
2021-01-23 09:40:54这是Android程序设计与开发(Android Studio版)课程的课程设计——“备忘录“软件源代码。没有bug,保证符合课设要求,老师已验收过,成绩优秀。 -
移动终端应用程序开发各章代码安卓
2019-03-28 19:29:41移动终端应用程序开发各章代码 1,2章为概述无代码 第3章《第一个Android程序》 第4章《Android生命周期》 第5章《Android用户界面》 第6章《组件通信与广播消息》 第7章《后台服务》 第8章《数据存储与访问》 第9章... -
网上订餐系统python程序代码_(完整版)基于安卓的网上订餐系统毕业设计
2020-11-24 00:09:37本设计是一款基于 Android 手机的网上快捷订餐系统, 服务端采用 C/S 模式,为餐厅管理员提供一个服务平台,用来添加餐品,管理客户 信息,管理订单信息等功能。移动端采用 android 操作系统,主要提供 客户注册,... -
安卓程序与设计 app开发 英语学习APP(刷视频学英语,每日记单词)
2019-07-04 17:36:56程序含完整运行的app代码,数据库使用的是as自带的sqlite数据库,含有查词,翻译,学习等功能模块。其中视频以及资源使用url链接爬取获得的,并保存在云服务器中,通过百度api接口实现了句子段落的翻译功能。 该APP... -
基于安卓Android的个人电子相册APP的设计和实现(含录像)(任务书,毕业论文8000字,程序代码,答辩PPT).rar
2020-04-11 18:51:49基于安卓Android的个人电子相册APP的设计和实现(含录像)(任务书,毕业论文8000字,程序代码,答辩PPT).rar -
安卓应用程序开发代码!在字节跳动我是如何当面试官的,3面直接拿到offer
2021-02-24 15:56:50比不得从大学就有目标有理想, 一直在为目标努力学习技术的同学, 在大学唯一能拿得出手的就是参加了电子设计大赛, 学了点嵌入式的知识. 毕业后开始做android, 说得好听点叫做项目, 实际上就是搬代码, 真正记到脑子里... -
安卓TCP通信程序客户端设计
2014-09-10 21:24:17上图为Activity布局界面,界面中有三个EditView控件,分别用于输入目标IP地址(edt_goalIpAddr ),目标端口号(edt_goalPort)以及要发送的信息( edt_mess),两个按钮一个用于连接远程服务器主机(btn_...详细代码 -
如何把设计好的sqllite和安卓程序打包发布
2012-12-28 16:36:14其中天气预报自然要涉及全国各地各个地区,我把这些地区名以及地区代码放在一个 SQLite 数据库里,当然 Android 对 SQLite 也支持的很好。问题是,学习过程中发现很多教程或者示例,都是程序运行后即时创建一个... -
安卓开发环境!设计思想与代码质量优化+程序性能优化+开发效率优化,终局之战
2021-02-26 16:39:14在渺如烟海的程序代码和迷宫般的网络软硬件中,他们如二百多年前的码头搬运工般背起重负,如妓女般彻夜赶工。信息技术的发展一日千里,除了部分爬到管理层的幸运儿,其他人的知识和技能很快过时,新的 IT 专业毕业生... -
安卓架构设计
2016-04-10 12:04:00先上一张总图,这是一张较为完整的安卓平台架构图,从上层到底层共包括四层,分别是应用程序程序层、应用框架层、系统库和Android运行时和Linux内核。 蓝色的代表java程序,黄色的代码为运行JAVA程序而实现的虚拟机... -
java聊天室源代码安卓_java 聊天室程序设计开发源码(客户端为android,含服务器端源码)...
2021-02-28 18:23:48【实例简介】【实例截图】【核心代码】package com.csu.server;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.IOException;... -
android小程序源代码!34岁安卓开发大叔感慨,附大厂真题面经
2021-03-05 20:08:30这也意味着不管是系统设计还是性能优化等方面,市场都给Android开发者提出了更高的要求。那么,Android是不是真的不吃香了呢?其实不是的,高级及以上还有很大的需求缺口,非常稀缺人才。但是初级开发者真的已经不... -
运动安卓设计app android 课程设计
2020-04-01 12:19:09简单的安卓类小程序app 可以下着学习代码看看学习 不能作为正式商业软件用,学习代码练习的时候可以用 -
基于安卓Android的校园APP系统设计(MySQL)(含录像)(毕业论文6500字,程序代码,客户端和服务端,MySQL数据库)
2017-05-31 20:29:27做毕设时在网上花了150买的一个别人做的管理系统,有兴趣的可以学习一下。 -
Android程序设计 安卓运动步数app(实现定位,行走路径,行走步数)
2020-12-21 20:24:37(完整代码+实训报告), -
安卓应用程序剖析
2018-07-11 17:25:13这是实际的应用程序文件,将被转化为Dalvik(google自己设计的用于Android平台的java虚拟机)可执行文件运行。下面由应用向导为Hello World应用生成的默认代码。这里,R.layout.activity_main引用自res/layout目录..... -
[安卓]安卓课程设计之俄罗斯方块
2020-07-13 22:30:26程序很简单就只放代码了,自己完善下color和Drawable即可使用 Java文件: package com.ytu.jkxy.jk171.sjp.russiablock; import androidx.appcompat.app.AppCompatActivity; import android.annotation....