上一页 1 ··· 9 10 11 12 13
摘要: 首先是xml布局文件: MainActivity中定义按钮的点击监听器,按下按钮时开始录音,松开按钮时停止录音,类似于微信的操作方法。 // 获得控件 public void get_con(){ btn_talk = (Button)findViewById(R.id.btn_talk); btn_talk.setOnTouchListener(new OnTouchListener(){ @Override public boolean onTouch(View v, MotionEvent e) { if (e.getAction() == MotionE... 阅读全文
posted @ 2013-11-30 18:07 MSTK 阅读(609) 评论(0) 推荐(0) 编辑
摘要: Windows端收到Android端传递来的键盘或鼠标操作信息以后,需要根据这些信息操作鼠标或键盘,这就需要用到java.awt.Robot类,该类用于控制鼠标或键盘。在Java主窗体中定义:public static Robot rbt;在主窗体的构造函数中初始化Robot: // 初始化Robot try{ rbt = new Robot(); } catch(Exception e){ l_status.setText("错误:" + e); }再定义一个静态方法: // Robot public static void rbt_act(Strin... 阅读全文
posted @ 2013-11-30 17:43 MSTK 阅读(703) 评论(0) 推荐(0) 编辑
摘要: 为了实现无线鼠标,需要识别出用户在手机屏幕上的滑动动作,这就需要用到GestureDetector类。首先是activity_main.xml: 运行后的效果:中间的空白区即是用户操作鼠标的区域,为了识别用户的动作,定义Mouse_GestureListener类,该类继承自GestureDetector.SimpleOnGestureListener:class Mouse_GestureListener extends GestureDetector.SimpleO... 阅读全文
posted @ 2013-11-30 17:28 MSTK 阅读(568) 评论(0) 推荐(0) 编辑
摘要: 为了实现无线键盘的功能,使用了InputMethodManager弹出软键盘。 // 弹出软键盘 public void pop_keyboard(){ imm = (InputMethodManager)ctx.getSystemService(Context.INPUT_METHOD_SERVICE); imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS); }同时监听了按键事件onKeyDown。 public boolean onKeyDown(int keyCode, KeyE... 阅读全文
posted @ 2013-11-29 22:32 MSTK 阅读(545) 评论(0) 推荐(1) 编辑
摘要: 在(1)中,实现了Windows服务端与Android客户端的连接,本节将实现在Windows服务端与Android客户端之间传递数据。Android客户端的发送线程SendThread.java代码:package com.hzhi.mouse_mb;import java.io.DataOutputStream;import java.net.Socket;import android.os.Bundle;import android.os.Message;import android.util.Log;public class SendThread extends Thread { p. 阅读全文
posted @ 2013-11-28 22:51 MSTK 阅读(559) 评论(0) 推荐(0) 编辑
摘要: 把手机作为移动鼠标、键盘使用非常方便,本文将实现这一功能。该应用分为两部分:Windows服务端和Android客户端。本文源代码的下载地址:http://download.csdn.net/detail/k_c_u_f/6673245。Windows服务端的工程目录如下:fMain是服务端的主界面,tListen是服务端的监听线程,tReceive是服务端的接收线程。Android客户端的工程目录如下:MainActivity是客户端的主Activity,ConnectThread是客户端的连接线程,SendThread是客户端的发送线程。Java语言的通信有Socket(套接字)和HTTP 阅读全文
posted @ 2013-11-28 20:09 MSTK 阅读(1021) 评论(0) 推荐(0) 编辑
摘要: Android可以使用Monkey向应用发送一连串的随机操作,就好像把手机交给一只猴子让它任意操作一样,以此来检测应用是否健壮,是否容易出错或崩溃。操作的类型包括触屏、移动、按键等。Monkey的语法如下:adb shell monkey -p 也可以首先进入adb shell,再输入monkey -p 。比如,在cmd中输入以下命令:该命令将向com.hzhi.sysinfor应用发送100个随机操作,选项-v表示显示随机操作,--throttle 1000表示事件之间的间隔时间为1秒(1000毫秒)。回车后,部分手机截图如下:可见,确实对该应用发送了很多随机操作。运行命令后的cmd... 阅读全文
posted @ 2013-11-27 23:22 MSTK 阅读(1739) 评论(0) 推荐(1) 编辑
摘要: 开发过程中,经常需要统计代码行数,这时可以通过Eclipse的Search功能来实现。步骤:1、在Package Explorer中选中需要统计的包;2、单击菜单Search-->File;3、按照下图设置Search选项:4、点击Search按钮;5、在Search窗口中就会显示该项目的代码总行数,以及各文件的行数: 阅读全文
posted @ 2013-11-26 22:53 MSTK 阅读(1162) 评论(0) 推荐(0) 编辑
摘要: Android中使用ActivityManager可以获得进程信息,并对进程进行管理,如结束进程等。本文使用ActivityManager获得进程列表,并结束选中的进程。首先,看看布局文件。 然后是Java文件。package com.hzhi.sysinfor;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import android.a... 阅读全文
posted @ 2013-11-24 16:14 MSTK 阅读(1082) 评论(0) 推荐(0) 编辑
摘要: 由于手机内存有限,有时需要一次删除很多个包,这时就需要一个实现Android包批量删除的应用。首先是布局文件: 布局文件相对简单,最重要的是列表。然后是类文件:package com.hzhi.sysinfor;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import android.app.AlertDialog;import android.app.Li... 阅读全文
posted @ 2013-11-22 22:05 MSTK 阅读(983) 评论(0) 推荐(0) 编辑
摘要: Android的版本信息可以通过android.os.Build获得,电话信息可以通过TelephonyManager获得,代码如下: private void get_infor(){ sdk = android.os.Build.VERSION.SDK;; release = android.os.Build.VERSION.RELEASE; user = android.os.Build.USER; TelephonyManager tm = (TelephonyManager) this.getSystemService(Context.TELEPHONY_... 阅读全文
posted @ 2013-11-22 18:11 MSTK 阅读(467) 评论(0) 推荐(0) 编辑
摘要: Android删除包有很多种方法,其中一种通过Intent删除,代码如下: public boolean unload (String n){ boolean res = true; try{ // 通过包名创建URI Uri pu = Uri.parse("package:" + n); // 创建Intent Intent i = new Intent(Intent.ACTION_DELETE, pu); // 执行卸载程序 startActivity(i); res = true; } catch(Exception e){ res =... 阅读全文
posted @ 2013-11-22 17:57 MSTK 阅读(357) 评论(0) 推荐(0) 编辑
摘要: 在一个ListActivity中,可能有很多行,如何在某个动作(如点击某个按钮)时判断哪些行的CheckBox被选中了,哪些行的CheckBox没有被选中,这是一个需要解决的问题。首先,需要让BaseAdapter的子类implements OnClickListener,然后在该类的getView()方法中添加以下代码:CheckBox chk_item = (CheckBox) my_item.chk_apk;chk_item.setOnClickListener(this);chk_item.setTag(position);获得CheckBox,再setOnClickListener。 阅读全文
posted @ 2013-11-22 00:12 MSTK 阅读(468) 评论(0) 推荐(0) 编辑
摘要: getView()是BaseAdapter的一个重要方法。为了研究getView()方法,使用了以下的类。// apk列表class list_apk extends BaseAdapter{ private Context ctx; private List list_data; public list_apk(Context context){ ctx = context; list_data = new ArrayList(); } @Override public int getCount() { // TODO Auto-generated method ... 阅读全文
posted @ 2013-11-20 10:53 MSTK 阅读(969) 评论(0) 推荐(0) 编辑
摘要: 在ListActivity中显示图标,好像并不复杂,实现起来却不轻松。首先,定义列表中的每一行,这里不是用xml文件定义,而是用一个类定义,CheckBox、ImageView、TextView等控件以addView的方法添加。//apk列表的一行class item_apk extends LinearLayout{ public CheckBox chk_apk; public TextView txt_name; public TextView txt_flag; public ImageView img_apk; public item_apk(Context ctx, S... 阅读全文
posted @ 2013-11-18 22:44 MSTK 阅读(707) 评论(0) 推荐(0) 编辑
摘要: 简单的说,ArrayList是顺序存储,而LinkedList是链式存储。 阅读全文
posted @ 2013-11-18 20:57 MSTK 阅读(597) 评论(2) 推荐(0) 编辑
摘要: int是一种数据类型,Integer是一个类,有各种方法,如Integer.parseInt(string)等。 阅读全文
posted @ 2013-11-18 20:54 MSTK 阅读(559) 评论(3) 推荐(0) 编辑
摘要: Android读取手机硬件信息可以使用android.os.Build类。 product = android.os.Build.PRODUCT; manufacturer = android.os.Build.MANUFACTURER; display = android.os.Build.DISPLAY; model = android.os.Build.MODEL; board = android.os.Build.BOARD; 阅读全文
posted @ 2013-11-17 18:04 MSTK 阅读(581) 评论(0) 推荐(0) 编辑
摘要: 安装应用时,有时会出现错误Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE,这是存储空间不足的错误,这时就只能将应用安装到SD卡,在AndroidManifest.xml文件的manifest里面添加下面一行:android:installLocation="preferExternal"这样应用就会被安装在SD卡,不会出现存储空间不足的错误了。 阅读全文
posted @ 2013-11-17 12:02 MSTK 阅读(1473) 评论(2) 推荐(1) 编辑
摘要: 有些Android版本没有系统重启的功能,非常不方便。需要我们自己开发一个能够重新启动的应用。首先定义布局文件: 布局文件其实很简单,就是一个按钮。注意android:sharedUserId="android.uid.system",这是为了让应用分享一个系统级别的UID,否则会出现权限拒绝的错误。类文件:package com.hzhi.restart;import android.os.Bundle;import andro... 阅读全文
posted @ 2013-11-16 22:28 MSTK 阅读(2007) 评论(0) 推荐(0) 编辑
摘要: PackageManager是Android中一个很有用的类,能够获取已安装的应用(包)的信息,如应用名称、图标、权限,安装、删除应用(包)等。以下代码可以获得已安装应用(包)的信息:// 包管理器PackageManager pm = getPackageManager();//获取手机内所有应用List pi = pm.getInstalledPackages(0); // PackageInfoPackageInfo pii = (PackageInfo) pi.get(i);// 应用名称name = pii.applicationInfo.loadLabel(pm);// 应用图标i 阅读全文
posted @ 2013-11-16 22:13 MSTK 阅读(445) 评论(0) 推荐(0) 编辑
摘要: Android获得屏幕尺寸的代码: // 获得屏幕尺寸 public void get_screen(){ wid_scr = getWindowManager().getDefaultDisplay().getWidth(); hei_scr = getWindowManager().getDefaultDisplay().getHeight(); } 阅读全文
posted @ 2013-11-16 22:01 MSTK 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 获取Android的ROOT权限其实很简单,只要在Runtime下执行命令"su"就可以了。 // 获取ROOT权限 public void get_root(){ if (is_root()){ Toast.makeText(mCtx, "已经具有ROOT权限!", Toast.LENGTH_LONG).show(); } else{ try{ progress_dialog = ProgressDialog.show(mCtx, "ROOT", "正在获取ROOT权限...", true, false); Ru 阅读全文
posted @ 2013-11-15 12:28 MSTK 阅读(950) 评论(0) 推荐(0) 编辑
摘要: Android有很多系统自带的设置界面,如设置声音,设置网络等。在开发中可以调用这些系统自带的设置界面。点击以下列表中的选项,就可以调出相应的系统自带的设置界面。如点击“无线和网络设置”,可以调出以下设置界面:实现的代码如下: // 无线和网络设置 public void config_wire(){ Intent intent = new Intent("/"); ComponentName cm = new ComponentName("com.android.settings", "com.android.settings.Wireles 阅读全文
posted @ 2013-11-15 12:08 MSTK 阅读(2233) 评论(0) 推荐(0) 编辑
摘要: Android中的选项卡是用TabHost实现的。首先,定义TabHost的布局文件: 其中,TabWidget即是选项卡上面的标签,FrameLayout是选项卡的内容。在Java类文件中定义如下:public class MainActivity extends TabActivity { private TabHost my_tabhost; private TabWidget my_tabwidget; private int i,k; private TextView tv; private String[] tabMenu = { "系统", "硬件& 阅读全文
posted @ 2013-11-15 11:24 MSTK 阅读(386) 评论(0) 推荐(0) 编辑
摘要: Android中经常用到列表,ListActivity是实现列表的一种好方法。使用ListActivity的方法,首先定义布局文件: 其中,最关键的就是ListView控件。然后,再用一个布局文件定义列表中的每一行: 最后,在类文件中使用SimpleAdapter类把列表显示出来。package com.hzhi.sysinfor;import java.util.ArrayList;import java.util.HashMap;import java... 阅读全文
posted @ 2013-11-15 11:14 MSTK 阅读(1296) 评论(0) 推荐(0) 编辑
摘要: 安装了一个Ubuntu,启动以后进入终端,想su root,提示输入密码,输入了很多次密码(我的用户密码和root密码是一样的),总是Login incorrect。后来输入了用户名,提示输入密码,这次输对了,然后再su root,输入密码,这次也对了,终于root登录成功了。想想原因,可能是因为要先登录用户名,然后才能登录root吧! 阅读全文
posted @ 2013-10-30 14:07 MSTK 阅读(1157) 评论(0) 推荐(0) 编辑
摘要: Android开发要用到NDK,装了一个虚拟机,老是不行。后来安装了一个cygwin,安装完毕后unset home,再export NDK,就可以使用了,非常方便,不用像虚拟机那样经常切换。 阅读全文
posted @ 2013-10-11 13:26 MSTK 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 在VirtualBox里新建了一个虚拟Linux系统,默认的连接方式是网络地址转换(NAT)。发现主机不能访问虚拟机的samba服务器,ping了一下,虚拟机可以ping主机,但是主机不能ping虚拟机。上网查资料才发现,原来网络地址转换(NAT)虚拟机能找到主机,但是主机不能找到虚拟机。于是把连接方式改为桥接网卡,再试了一下,OK了,主机和虚拟机都可以相互ping了,samba服务器也可以使用了。 阅读全文
posted @ 2013-10-10 22:08 MSTK 阅读(275) 评论(0) 推荐(0) 编辑
上一页 1 ··· 9 10 11 12 13