- 博客(44)
- 收藏
- 关注
原创 (简单工厂模式+策略模式)实现商场打折促销收银软件
本文参考《大话设计模式》进行总结。策略模式是一种定义一系列算法的方法,从概念上来看,所有这些算法完成的都是相同的工作,只是实现不同,它可以以相同的方式调用所有的算法,减少了各种算法类与使用算法类之间的耦合。仅简单工厂模式://现金收费抽象类abstract class CashSuper{ //参数为原价,返回位当前价 public abstract double accep...
2019-01-05 14:25:56
3871
3
原创 用简单工厂模式实现加减乘除运算等计算
本文参考《大话设计模式》进行总结初级版本:class program{ statis void Main(String[] args) { try { Console.Write("请输入数字A: "); string strNumberA = Console.ReadLine(); Console.Write("请选择符号(+、-、*、/): "); ...
2019-01-04 21:51:00
2537
原创 Linux 下 Android NDK 编译 openssl
1 概述openssl可以编译成ARM下面的二进制代码(动态库或者静态库),方便APP使用,APP在使用的时候,需要使用JNI来进行调用。本文章参考官方文档https://wiki.openssl.org/index.php/Android进行总结。编译步骤:1.下载NDK2.下载openssl和setenv-android.sh3.设置环境变量,配置openssl4....
2018-12-25 21:30:39
3661
2
原创 利用单一职责原则、接口隔离原则和单例模式对代码进行优化
待优化的代码见上个博客:https://blog.csdn.net/wangning13ji/article/details/85064184本文针对Test4里的MainActivity进行优化。优化前:MainActivity.javapackage com.test4.w00425655.test4;import android.content.Context;impor...
2018-12-20 21:55:40
695
原创 利用sharedUserId实现不同APK之间的类加载和函数调用
通过SharedUser id,拥有同一个User id的多个APK可以配置成运行在同一个进程中.所以默认就是可以互相访问任意数据.也可以配置成运行成不同的进程,同时可以访问其他APK的数据目录下的数据库和文件.就像访问本程序的数据一样.Test4的AndroidManifest.xml。 android:sharedUserId="com.example"<?xml versi...
2018-12-18 14:26:36
376
原创 安卓轻松实现清理缓存
效果图 layout布局activity_clean_cache.xml<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/
2017-05-29 18:28:20
606
原创 个人简历
联系方式手机:15850786067 (南京号)Email:131250220@smail.nju.edu.cnQQ:1287983597个人信息王宁/男/1993南京大学软件学院本科个人博客:http://blog.csdn.net/wangning13jiGithub: https://github.com/wangning13 应聘职位:安卓开发实习生实习经历上海聚宝/南
2016-09-27 22:57:38
6360
转载 安卓面试:activity
1、什么是 Activity?四大组件之一,一般的,一个用户交互界面对应一个 activitysetContentView() ,// 要显示的布局button.setOnclickLinstener{}, activity 是 Context 的子类,同时实现了 window.callback 和 keyevent.callback, 可以处理与窗体用户交互的事件.我开发
2016-09-19 16:39:26
657
原创 2017校招华为安卓技术面面试题
刚刚拿到了华为的offer,激动之余不忘了跟大家分享一下笔试面试题啦~首先是笔试也就是(机考),这个主要是考算法啦,其实说实话不难,考前刷几道华为OJ系统的算法题稳过,3道算法题600分的题目拿了520分,感觉还良好。第一道挺简单的,不过我给忘记什么题目了,万分抱歉;第二道是矩阵路径可达的问题,其实如果做过这类题目挺简单的,主要用递归实现;第三道是7个和尚7天挑水的矩阵问题,有两种解法,我用了
2016-09-19 12:53:25
5099
转载 多线程之间及多进程间的通信
基本概念++++++++++++++++++++++++++++++++++++++++++++++++进程和线程的关系:(1)一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程。(2)资源分配给进程,同一进程的所有线程共享该进程的所有资源。(3)处理机分给线程,即真正在处理机上运行的是线程。(4)线程在执行过程中,需要协作同步。不
2016-09-07 00:11:19
595
转载 android解析XML总结(SAX、Pull、Dom三种方式)
在android开发中,经常用到去解析xml文件,常见的解析xml的方式有一下三种:SAX、Pull、Dom解析方式。最近做了一个android版的CSDN阅读器,用到了其中的两种(sax,pull),今天对android解析xml的这三种方式进行一次总结。 今天解析的xml示例(channels.xml)如下:xml version="1.0" encoding="utf
2016-08-29 11:12:19
482
转载 android json解析及简单例子
JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性。业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据交换。JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为。 – Json.orgJSON Vs XML1.JSON和XML的数据可读性基
2016-08-29 11:10:18
565
转载 android中JSON的解析
android中网络数据传输是经常被用到的,通常我们使用xml或者json,而json更加轻量,便捷,我们使用的更多。我自己在项目中使用很多,今天就说说android中怎么去解析JSON,帮助自己总结内容,同时帮助别人少走弯路。##JSON语法首先看JSON的语法和结构,这样我们才知道怎么去解析它。JSON语法时JavaScript对象表示语法的子集。JSON的值可以是:
2016-08-29 11:01:07
452
原创 优化 listview 有哪些方法?
我这里说一下我用 ListView 的一些经验,为了尽量说的全面一些,这里列一些 Tips,具体的代码可以找相关的文章,或者一起交流:首先,虽然大家都知道,还是提一下,利用好 convertView 来重用 View,切忌每次 getView() 都新建。ListView 的核心原理就是重用 View。ListView 中有一个回收器,Item 滑出界面的时候 View 会回收到这里,需要
2016-08-29 10:24:06
529
转载 【Android 应用开发】Android 开发 之 JNI入门 - NDK从入门到精通
NDK项目源码地址 : -- 第一个JNI示例程序下载 : GitHub - https://github.com/han1202012/NDKHelloworld.git -- Java传递参数给C语言实例程序 : GitHub - https://github.com/han1202012/NDKParameterPassing.Git --C语言回调Java方法示
2016-08-29 10:05:11
1025
转载 集成第三方推送最佳实践
本文固定连接:https://github.com/tianzhijiexian/Android-Best-Practices一、需求背景Android在国内没有办法利用系统级的推送服务,再加上第三方rom对于原生的各种定制(这里的定制并无褒贬之意)所以国内的开发者就需要选择一些成熟的推送平台做推送服务了。目前的推送平台种类繁多,本文将给出推送平台的具体对比和调研结果,方便后来人进行选择。
2016-08-28 22:38:07
2426
转载 Android实现推送方式解决方案
本文介绍在Android中实现推送方式的基础知识及相关解决方案。推送功能在手机开发中应用的场景是越来起来了,不说别的,就我们手机上的新闻客户端就时不j时的推送过来新的消息,很方便的阅读最新的新闻信息。这种推送功能是好的一面,但是也会经常看到很多推送过来的垃圾信息,这就让我们感到厌烦了,关于这个我们就不能多说什么了,毕竟很多商家要做广告。本文就是来探讨下Android中实现推送功能的一些解决方案,也
2016-08-25 20:21:00
532
转载 OkHttp完全解析
一、概述最近在群里听到各种讨论okhttp的话题,可见okhttp的口碑相当好了。再加上Google貌似在6.0版本里面删除了HttpClient相关API,对于这个行为不做评价。为了更好的在应对网络访问,学习下okhttp还是蛮必要的,本篇博客首先介绍okhttp的简单使用,主要包含:一般的get请求一般的post请求基于Http的文件上传文件下载加载图片支持请求回调,直接返回对
2016-08-25 19:46:18
633
转载 Android屏幕适配全攻略(最权威的官方适配指导)
Android的屏幕适配一直以来都在折磨着我们这些开发者,本篇文章以Google的官方文档为基础,全面而深入的讲解了Android屏幕适配的原因、重要概念、解决方案及最佳实践,我相信如果你能认真的学习本文,对于Android的屏幕适配,你将有所收获!Android屏幕适配出现的原因重要概念屏幕尺寸屏幕分辨率屏幕像素密度dpdipdpisppxmdpihdpixdpi
2016-08-25 19:34:11
442
转载 较详细的介绍JNI
JNI其实是Java Native Interface的简称,也就是java本地接口。它提供了若干的API实现了和Java和其他语言的通信(主要是C&C++)。也许不少人觉得Java已经足够强大,为什么要需要JNI这种东西呢?我们知道Java是一种平台无关性的语言,平台对于上层的java代码来说是透明的,所以在多数时间我们是不需要JNI的,但是假如你遇到了如下的三种情况之一呢? 你
2016-08-25 19:22:39
352
转载 Android中的ANR异常如何分析又该怎么去避免ANR
ANR是个什么玩意 ANR,是“Application Not Responding”的缩写,即“应用程序无响应”。系统会向用户显示一个对话框,用户可以选择“等待”而让程序继续运行,也可以选择“强制关闭”。 在Android中,应用程序的响应是由Activity Manager和WindowManager系统服务监视的 。当它监测到A、B、C情况中的一个时,An
2016-08-24 11:48:00
3362
1
原创 Android之批量加载图片OOM问题解决方案
一、OOM问题出现的场景和原因一个好的app总少不了精美的图片,所以Android开发中图片的加载总是避免不了的,而在加载图片过程中,如果处理不当则会出现OOM的问题。那么如何彻底解决这个问题呢?本文将具体介绍这方面的知识。首先我们来总结一下,在加载图片过程中出现的OOM的场景无非就这么几种:1、 加载的图片过大2、 一次加载的图片过多3、 以上两
2016-08-24 11:42:19
1255
原创 Android应用中OOM问题剖析和解决方案
1.什么是OOM?03-21 21:05:28.771: E/dalvikvm-heap(13316): Out of memory on a 10485776-byte allocation.03-21 21:05:28.779: E/AndroidRuntime(13316): java.lang.OutOfMemoryError这几句的意思是,我们程序申请需要10485776b
2016-08-24 11:40:46
726
转载 Android数据存储五种方式总结
本文介绍Android平台进行数据存储的五大方式,分别如下: 1 使用SharedPreferences存储数据 2 文件存储数据 3 SQLite数据库存储数据 4 使用ContentProvider存储数据 5 网络存储数据下面详细讲解这五种方式的特点第一种: 使用SharedP
2016-08-23 17:10:14
469
原创 Android中的Handler的机制与用法详解
目录结构Android中的Handler的机制与用法详解,什么是Handler,如何传递 Message,传递 Runnable 对象,传递 Callback 对象,Handler 原理是什么?Handler 与 Looper、MessageQueue 的关系,HandlerThread是什么?Android 中更新 UI 的几种方式。1. 了解几个概念很多Androi
2016-08-23 11:43:52
5055
原创 点击空白处,软键盘消失
/** * 点击空白处,软键盘消失 */@Overridepublic boolean dispatchTouchEvent(MotionEvent ev) { if (needCloseInputWhenTouchSpace() && ev.getAction() == MotionEvent.ACTION_DOWN) { View v = getCurrentF
2016-08-11 14:18:57
433
原创 java实现单链表的基本操作
package com.tyxh.link; //节点类 public class Node { protected Node next; //指针域 protected int data;//数据域 public Node( int data) { this. data = data;
2016-08-08 10:06:41
520
2
原创 RelativeLayout常用属性介绍
第一类:属性值为true或false android:layout_centerHrizontal 水平居中 android:layout_centerVertical 垂直居中 android:la
2016-07-27 15:54:06
238
原创 Android开发TextView实现长按复制文本功能的方法
上网查询Android开发实现长按复制文本功能的方法很多,有什么改写系统长按响应,有用EditView控件替换TextView的方法,还有自定义控件什么的,总之都比较麻烦,而且效果也不好。 其实现在新的Android开发只需要增加一行代码就可以实现这个功能,在布局文件的TextView控件属性中增加这么一句就行:android:textIsSelectable="true"
2016-07-27 09:20:25
873
转载 Android中Cursor类的概念和用法
使用过 SQLite数据库的童鞋对 Cursor 应该不陌生,加深自己和大家对Android 中使用 Cursor 的理解。关于 Cursor在你理解和使用 Android Cursor 的时候你必须先知道关于 Cursor 的几件事情:Cursor 是每行的集合。使用 moveToFirst() 定位第一行。你必须知道每一列的名称。你必须知道每一列的数据类型。Cursor
2016-07-19 17:38:22
335
原创 android圆形头像的实现类CircleImageView.java
import android.content.Context;import android.content.res.TypedArray;import android.graphics.Bitmap;import android.graphics.BitmapShader;import android.graphics.Canvas;import android.graphics.Col
2016-07-19 17:03:38
382
原创 android实现底部菜单栏
xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/header_bg_color" android:
2016-07-19 16:38:13
1050
原创 android实现登录发送短信验证码或者语音验证码以及一个倒计时的内部类
//获取验证码private void requestForGetCode() { String mobile = etPhoneNumber.getText().toString().trim(); MGRequestParams params = new MGRequestParams(); params.put("source", "login"); par
2016-07-19 16:02:21
1593
原创 安卓列表选项生成黑线的方法
<View android:layout_width="match_parent" android:layout_height="0.2dp" android:layout_marginLeft="@dimen/padding_15" android:layout_marginRight="@dimen/padding_15" android:backgro
2016-07-19 15:50:29
495
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人