`
jonson
  • 浏览: 168466 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

android 开发常用代码备查[更新20150520]

阅读更多

30.分析App启动速度工具

adb shell am start -W pkgname/lauchactivityname

 

 

29.查看三方应用或是系统应用签名

    首先:用winrar打开待查看的apk,将其中META-INF文件夹解压出来,得到其中的CERT.RSA文件。

     

keytool -printcert -file META-INF/CERT.RSA
jarsigner -verbose -keystore ./xiaoying_key -signedjar signed.apk test.apk alignname
zipalign 4  src.apk  dest.apk

 

 

28.日期格式化:

Format formatter3 = new SimpleDateFormat("MMMM d'th' yyyy");
    String today3 = formatter3.format(new Date());
    System.out.println("Today : " + today3);

 

27.

在support v4中的fragment startActivityForResult时,必须使用this.startActivityForResult()而不是getActivity().startActivityForResult()

原因是v4的fragment.startActivityForResult()中,调用了startActivityFromFragment(),

 

其中对requestCode做了处理,把requestCode的高16位指定fragment index,然后低16位用于原本的requestCode

 

26.下载googleplay 中的app

2.输入要下载的apk package name,或该apk google play完整URL

25.查看apk 签名

用winrar打开待查看的apk,将其中META-INF文件夹解压出来,得到其中的CERT.RSA文件,通过

keytool-printcert-file META-INF/CERT.RSA

24.ListView或GridView中android:clipToPadding属性的使用说明示例

该属性的解释: 

Defines whether the ViewGroup will clip its drawing surface so as to exclude the padding area. 

什么意思呢?就是说: 

clipToPadding属性定义了是否允许ViewGroup在padding中绘制,该值默认为true,即不允许. 

所以若我们给ListView设置了android:paddingTop="70dip" android:paddingBottom="70dip" 

那么我们可以看到ListView的头部以上和尾部以下都占有70大小的padding,在滑动ListView的过程 

中这个padding当然是存在的.在padding部分是看不到ListView的item的,本质上是在这两部分没有绘制

我们的ListView 

23.eclipse 内存分析工具MAT插件安装地址:

MAT主站https://eclipse.org/mat/downloads.php

 

 

22.ADB链接错误:adb server is out of date

出现这个错误的原因是 adb的端口被占用了,所以adb server无法启动。

首先要检查是不是这个原因,通过以下命令

C:\Users\xxxx>adb nodaemon server  
cannot bind 'tcp:5037'

 然后通过命令查看那个进程占用了此端口:  netstat -ano | findstr "5037"  

 

  TCP    127.0.0.1:5037         0.0.0.0:0              LISTENING       4900
  TCP    127.0.0.1:5037         127.0.0.1:53433        TIME_WAIT       0
  TCP    127.0.0.1:5037         127.0.0.1:53438        TIME_WAIT       0
  TCP    127.0.0.1:5037         127.0.0.1:53443        TIME_WAIT       0

 最后通过命令杀死改进程就OK 了

 

tskill 4236

 

 

 

21.从Raw目录读取文本文件 ,并且以字符串形式读入

public static String readRawTextFile(Context ctx, int resId)
{
    InputStream inputStream = ctx.getResources().openRawResource(resId);

    InputStreamReader inputreader = new InputStreamReader(inputStream);
    BufferedReader buffreader = new BufferedReader(inputreader);
    String line;
    StringBuilder text = new StringBuilder();

    try {
        while (( line = buffreader.readLine()) != null) {
            text.append(line);
            text.append('\n');
        }
    } catch (IOException e) {
        return null;
    }
    return text.toString();
}

 

20.android checkbox 设置图标与文字之间的距离。

     Jelly Bean 版本及之后的新版本只需要设置 属性即可   

android:paddingLeft="5dp"
 对于其它版本的系统需要
final float scale = this.getResources().getDisplayMetrics().density;
mChkbox.setPadding(mChkbox.getPaddingLeft() + (int) (24.0f  * scale + 0.5f), mChkbox.getPaddingTop(), mChkbox.getPaddingRight(),
					mChkbox.getPaddingBottom());
 其中24.0f是选择图标的DP值。

 

19.android include 标签使用注意事项

如果你在使用<include>标签时,为了对别的布局属性生效,你必须都覆盖android:layout_height和android:layout_width属性。如果没有覆盖,那么其它布局属性如align等都会无效。

 

 

18.动画接口

建议使用View.startAnimation(ani)接口,实践发现 setAnimation接口,无法调用到动画的setAnimationListener的回调。

 

 

17.生成圆角图片

  主要原理就是使用下面这个画图接口来生成圆角图片

 

 canvas.drawRoundRect

 

 

16.查看apk的签名信息命令

 

jarsigner -verify -verbose -certs abc.apk

 

15.Android中Activity finish的接口。

 

关闭自己    Finish()
关闭由自己 StartActivity启动的Activity    FinishActivity(requestcode);

 

14.动态修改button等控件尺寸。

 

LayoutParams param = m_AddFiles.getLayoutParams();
param.height = 202;

 

 

13.onSaveInstanceState方法的执行时机。

     该方法会在程序非正常退出的情况下被调用,但是它的调用是不能保证的。

 

12.将控制台输出的LOG信息输出到文件中。

 

adb logcat > ' filename'

 输出的文件在当前执行命名的文件目录下。


11.关闭android的music service.

 Intent i = new Intent("com.android.music.musicservicecommand");
       i.putExtra("command", "pause");
       mContext.sendBroadcast(i);


10.控制软键盘的显示。
不显示回车键,需要在xml配置里增加属性配置:

android:singleLine="true"



9.如何是application全屏

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
        getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);


在Oncreate的时候调用这两个语句。

8.隐藏application  Title bar

requestWindowFeature(Window.FEATURE_NO_TITLE);



7.如何获取屏幕尺寸

Display display = getWindowManager().getDefaultDisplay(); 
int width = display.getWidth();
int height = display.getHeight();


6.Bitmap ,Drawable 相互转换

Drawable d ;
Bitmap bitmap = ((BitmapDrawable)d).getBitmap();




5.android:padding和android:layout_margin的区别.
android:padding是用来控制当前view自己内部 child的位置关系的。
android:layout_margin是用来控制自己与其它跟自己同级的VIEW的位置关系的。


1.如何设置软键盘不自动弹出。
在activity的oncreate方法中设置window的softinputmode.
代码如下:

this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);


2.Android所提供给用户的的一下系统的Service
像NotificationManager Vebrator AlarmManager 都是比较常用的。
WINDOW_SERVICE                      WindowManager                    管理打开的窗口程序
LAYOUT_INFLATER_SERVICE             LayoutInflater                   取得xml里定义的view
ACTIVITY_SERVICE                    ActivityManager                  管理应用程序的系统状态
POWER_SERVICE                       PowerManger                      电源的服务
ALARM_SERVICE                       AlarmManager                     闹钟的服务
NOTIFICATION_SERVICE                NotificationManager              状态栏的服务
KEYGUARD_SERVICE                    KeyguardManager                  键盘锁的服务
LOCATION_SERVICE                    LocationManager                  位置的服务,如GPS
SEARCH_SERVICE                      SearchManager                    搜索的服务
VEBRATOR_SERVICE                    Vebrator                         手机震动的服务
CONNECTIVITY_SERVICE                Connectivity                     网络连接的服务
WIFI_SERVICE                        WifiManager                      Wi-Fi服务
TELEPHONY_SERVICE                   TeleponyManager                  电话服务

获取服务:

ActivityManager manager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);


3.获取当前系统的语言。
java.util.Locale中有详细定义

String locale = context.getResources().getConfiguration().locale.getLanguage();



4.对于android2.2 及android2.3中%s  %d的转义
如果strings.xml字符串定义中出现 %s  %d等输出格式字符,需要转义。
转义方法为:%+符号序号+$+[原来的符号如s\d],
举例来说:如果<string name="test">你好%s,你的分数为:%d.</string>
应该转义为:<string name="test">你好%1$s,你的分数为:%2$d.</string>

 

3
0
分享到:
评论

相关推荐

    mysql常用函数备查

    以下是关于MySQL常用函数的一些详细说明: **一、控制流程函数** 1. **CASE...WHEN...END** 语句:这是一个条件判断语句,可以根据不同的条件返回不同的结果。在给定的示例中,Eg1 判断1是否大于0,如果是则返回'...

    进程备查手册 \进程备查手册

    \进程备查手册\进\进程备查手册\进程备查手册程备查手册

    vi 常用命令整理 可以备查

    本文将深入解析标题为“vi常用命令整理可以备查”中提及的各项功能与操作,帮助读者全面掌握VI编辑器的使用技巧。 #### 一、基本移动命令 - **`h`**: 向左移动一个字符。 - **`j`**: 向下移动一行。 - **`k`**: ...

    CATIA二次开发技术基础.part3

    不仅讲解了CATIA二次开发时所应了解的基本原理,而且还详细介绍了CATIA主要模块二次开发的方法及常用函数,并给出了相应的实例程序。为使读者能够快速掌握CATIA二次开发的基本思路、方法和应用技巧,尽快达到...

    水利工程监理平行检测备查表.pdf

    《水利工程监理平行检测备查表》是水利工程建设过程中的一个重要工具,主要用于确保工程质量的把控。在水利水电工程的施工过程中,监理单位会进行平行检测,即独立于施工单位的质量检查,以保证工程的质量达到设计和...

    软著60页代码整理生成工具V1.2

    该软件能帮助程序员将代码直接整理组织成申请软件著作权所需的源代码文档,本文件生成全部代码文档(备查),60页代码(前后各30页)提交申请用,文档格式为PDF版,需要注册,未注册的会在文档有“未注册”的字样。...

    CATIA二次开发技术基础

    不仅讲解了CATIA二次开发时所应了解的基本原理,而且还详细介绍了CATIA主要模块二次开发的方法及常用函数,并给出了相应的实例程序。为使读者能够快速掌握CATIA二次开发的基本思路、方法和应用技巧,尽快达到...

    [Flex与ActionScript.3程序开发].陈爽,付凯.扫描版

    《Flex与ActionScript 3程序开发》适合广大的Flex初学者、Web应用开发者、在校学生等对Flex技术的入门与提高,也特别适合于中高级Flex开发人员作为实际开发时的代码备查手册。 编辑推荐 《Flex与ActionScript 3程序...

    《Flex与ActionScript程序开发》[PDF]

    本书主体分为5个部分,分别从基础知识、视觉设计、组件高级技法、性能...本书适合广大的Flex初学者、Web应用开发者、在校学生等对Flex技术的入门与提高,也特别适合于中高级Flex开发人员作为实际开发时的代码备查手册。

    软件著作权60页代码整理生成工具V1.3

    该软件能帮助程序员将代码直接整理组织成申请软件著作权所需的源代码文档,本文件生成全部代码文档(备查),60页代码(前后各30页)提交申请用,文档格式为PDF版,需要付费注册,未注册的会在文档有“未注册”的...

    参考资料-监理单位管理人员签名笔迹备查表GDAQ4301.zip

    标题提到的"参考资料-监理单位管理人员签名笔迹备查表GDAQ4301.zip"是一个与工程监理相关的压缩文件,它包含了监理单位管理人员的签名样本,用于核实和确认他们在不同文件上的签名真实性。这个"备查表"是项目管理中...

    软件著作权60页代码整理生成工具V1.6-积分不能选1分了,系统定的5分

    该软件能帮助程序员将代码直接整理组织成申请软件著作权所需的源代码文档,本文件生成全部代码文档(备查),60页代码(前后各30页)提交申请用,文档格式为PDF版,需要付费注册,未注册的会在文档有“未注册”的...

    电子发票备查工作簿.xlsm

    vba电子发票登记工作簿,右击弹出常用报销事项或报销人姓名

    软著申请60页的源代码文档生成工具 2.0

    该软件能帮助程序员将代码直接整理组织成申请软件著作权所需的源代码文档,本文件生成全部代码文档(备查),60页代码(前后各30页)提交申请用,文档格式为PDF版,需要付费注册,未注册的会在文档有“未注册”的...

    备查目录.txt

    备查目录

    超级实用的软件著作权申请源代码材料格式文档生成辅助工具-软著源代码生成工具

    为方便申报软件著作权对前后60页代码的整理,只需要选择源代码文件夹目录即可生成前后30页代码文件,全量备查代码文件,页眉 页码 格式都弄好了,支持C++、java、C#、python、JavaScript、vue等任何常见格式。...

    CATIA二次开发技术基本.part2

    不仅讲解了CATIA二次开发时所应了解的基本原理,而且还详细介绍了CATIA主要模块二次开发的方法及常用函数,并给出了相应的实例程序。为使读者能够快速掌握CATIA二次开发的基本思路、方法和应用技巧,尽快达到...

    用友培训课件:U9V2 8组件化实施方案实例指导_GL-020科目备查.ppt

    备查仅记录和查询信息,而核销则需实时更新余额并进行账龄分析。 2. **及时核销**:为了确保备查余额和账龄分析的准确性,必须及时进行核销操作。 3. **财务部科目备查设置**:在产品方案中,需要设置科目备查,并在...

    防城港市建设工程造价成果文件网上报送备查系统操作使用说明.pdf

    3. 系统版本和更新信息:文档中出现的数字“*.*.*.*”、“*.*.*.*.5”、“1.2.1”、“*.*.*.*.3”、“*.*.*.*.3.4”、“1.2.15”等可能代表系统版本号或者更新日志中提及的各个更新版本的标识。在软件系统中,版本号...

    VB 控制AutoACD 编程备查

    这个"VB 控制AutoACD 编程备查"教程提供了一个深入学习如何结合这两种工具的方法,以提高设计效率和自动化工作流程。 VB是一种事件驱动的编程语言,是微软.NET框架的一部分,它提供了直观的编程界面和丰富的库,...

Global site tag (gtag.js) - Google Analytics