1、CPU频率,CPU信息:/proc/cpuinfo和/proc/stat
通过读取文件/proc/cpuinfo系统CPU的类型等多种信息。
读取/proc/stat 所有CPU活动的信息来计算CPU使用率
下面我们就来讲讲如何通过代码来获取CPU频率:
package com.orange.cpu;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
public class CpuManager {
// 获取CPU最大频率(单位KHZ)
// "/system/bin/cat" 命令行...
阅读全文
1、Android系统默认支持三种字体,分别为:“sans”, “serif”, “monospace
2、在Android中可以引入其他字体 。
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:Android="http://schemas.android.com/apk/res/android"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent" >
<TableRow>
<TextView
Android:layout_marginRight="4px"
Android:text="sans:"
Android:textSize="20sp" &g...
阅读全文
要实现多页滑动效果,主要是需要处理onTouchEvent和onInterceptTouchEvent,要处理好touch事件的子控件和父控件的传递问题。滚动控制可以利用android的Scroller来实现。
对于不清楚android Touch事件的传递过程的,先google一下。
这里提供两种做法:
1、自定义MFlipper控件,从ViewGroup继承,利用Scroller实现滚动,重点是onTouchEvent和onInterceptTouchEvent的重写,要注意什么时候该返回true,什么时候false。否则会导致界面滑动和界面内按钮点击事件相冲突。
由于采用了ViewGroup来管理子view,只适合于页面...
阅读全文
Android应用大部分都会有欢迎界面,几张whatsnew图片可以左右滑动,这里贴下自己的源码。大概思路是:重写Gallery,重写onFling()。
为什么不直接用Gallery呢?因为galler默认会有滑动惯性,会出现一次滑动几页的现象,这里明显不合适。
另外,这种方式会有一个小问题,如果你的界面里带了某些控件,而且设置了OnClickListener(),那么用户如果从控件所在区域开始拖动,是不会有拖动效果的,具体原因是onTouchEvent和onInterceptTouchEvent的传递问题。如果想要解决这个问题,可以看下一篇文章,通过重写Adapter...
阅读全文
虽然Android没有明确指定uses-permission不可以重复写,但是最近的经验是最好是不要重复,否则在某些厂商定制的技巧可能出现问题。
最近写一个应用,里面有用到网络访问,发现在有些机型下总是访问不了网络。而其他机型都是可以的。出现问题的手机网络都是正常的。
后面发现Manifest.xml中有好几个网络相关的uses-permission都重复写了几个,于是把重复的去掉之后,发现现在访问网络都正常了。
阅读全文
1、//隐藏软键盘
((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(WidgetSearchActivity.this.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
2、//显示软键盘,控件ID可以是EditText,TextView
((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).showSoftInput(控件ID, 0);
3、不自动弹出键盘:
带有EditText控件的在第一次显示的时候会自动获得focus,并弹出键盘,如果不想自动弹出键盘,有两种方法:
方法一:在mainfes...
阅读全文
google翻译api已经收费了,而微软翻译api目前是免费的,支持几种不同的方式访问,如果感兴趣可以自己封装下协议处理。官方介绍:
http://msdn.microsoft.com/en-us/library/hh454950.aspx。
这里介绍一下java下的使用。Java下使用微软翻译api可以直接使用一个开源的sdk,http://code.google.com/p/microsoft-translator-java-api/。
一、首先去http://code.google.com/p/microsoft-translator-java-api/,下载相关jar文件,这里有对微软翻译api的详细使用有作详细介绍。
二,去申请key,进入http://www.bi...
阅读全文
对于结束其他的进程可以用killBackgroundProcesses()或者restartPackage,二者都需要指定权限:
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"/>或
<uses-permission android:name="android.permission.RESTART_PACKAGES"/>,
后者在2.2以后已经废弃;这两个都都无法结束自己的进程。
如果是结束自己的进程可以用android.os.Process.killProcess(android.os.Process.myPid());
注意:如果进程中启动了service或者注册了reciever,已经要先退出,否则会导致进程结束之...
阅读全文
在开发过程中发现,有些软件对中文路径支持不大好,如果使用Uri.fromFile转换中文路径为uri的时候,有些软件可能会识别不出来导致功能异常,已知的有两个应用:1、腾讯微博的分享功能;2、酷派D530下调用系统摄像头拍照。
如果非要用中文路径,可以采用下面的方式:
String path = getCameraTempFilePath(),;
//有些系统摄像头对中文路径支持不好,通过Uri.fromFile编码之后反而有问题,先手动加上吧
// Uri uri = Uri.fromFile(new File(path));
Uri uri = Uri.parse("file://"+path);
i...
阅读全文
今天系统更新,之后就发现Eclipse启动不了了,双击总是一闪而过,google了一下发现下面的解决方法:
eclipse启动不了,双击程序后splash一闪而过,没有任何错误提示。怎么办??
这种情况一般是java配置都正确的情况下发生的。错,绝对不是的,即使你修改了都会没有用的。
一般ECLIPSE都是因为JDK升级导致在C:\windoes \system32下生成这三个文件。
(搜到很多打酱油评论都是说重装系统啦,重装eclipse啦。 好点的说改eclipse.ini啦,设置javahome和path啦。。遇到问题就想闪,来点研究的精神好不好。首先...
阅读全文