随笔分类 - android手机开发
摘要:写了不少的小应用程序,只是大概了解各个部分的作用,没有详细研究过,最近看到了一篇介绍,这里搬来共享一下! src目录:主要是完成java代码的编写 assets目录:资源目录 res目录:存在图片,布局文件和字符串、菜单等文件 bin目录:输出文件夹,如生成的APK文件 project,proper
阅读全文
摘要:最近做了一个Demo,监听手机中传感器的数据,并将数据保存到手机文件中,发现数据会有丢失的现象。 经过多次测试,发现系统进入深度休眠了,之后service会停止,虽然增加了service自动启动的功能,但是还会导致数据中断一段时间。如果屏幕一直亮着会比较耗电,所以亮屏这种方法直接Pass掉。那么怎么
阅读全文
摘要:前段时间做了一个简单的Demo,拦截电话并拒接。其中遇到一个小问题,拦截会有延迟,偶尔会响一声或者两声,之后才能拒接成功。那么怎么解决响一两声的问题呢?确实还费了点时间呢!谁叫咱的技术不行呢?这里记录一下拦截来电并拒接以及响铃声的问题的处理。 1,拦截电话需要接收来电的广播,android.inte
阅读全文
摘要:最近在做一个Demo,监听电量变化,持续记录电量的变化。 一开始我是在Activity中注册广播,可以正常监听电量状态,但随着Activity生命周期变化,不能持续监听电量。就想到用service来持续监听,尝试了多次静态注册,发现竟然接收不到电量变化的广播。!!!!???? 后来上网搜索,发现有五
阅读全文
摘要:上层使用jni(从java层到framework到JNI的用法过程) MTK平台如果在硬件上增加了按键灯,framework层想要调用的话,这里简单介绍一下我的使用过程。 首先,需要增加KeyLed.c和头文件KeyLed.h两个接口函数: (\hardware\libhardware_legacy
阅读全文
摘要:MTK平台如果在硬件上增加了按键灯,第三方APP和framework层想要调用的话,均需要通过jni接口,具体用法不太一样,这里简单介绍一下我的使用过程。 首先,需要增加KeyLed.c和头文件KeyLed.h两个接口函数: (\hardware\libhardware_legacy\key_led
阅读全文
摘要:android中使用反射机制,调用framework中的方法。有的时候重写类的话太麻烦,也有很多资源需要添加,因此,使用反射机制调用系统的方法会比较简单一些。首先写一个单独的类,ReflectionInternal.java,用以获得这个类,和需要用到的方法。 1 public class ReflectionInternal { 2 Object obj; 3 Class sm; 4 public ReflectionInternal(Context context,String str){ 5 try { 6 sm = Cla...
阅读全文
摘要:xml文件 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout 3 xmlns:android="http://schemas.android.com/apk/res/android" 4 android:id="@+id/launch_
阅读全文
摘要:需要达到的效果是:点击菜单中选项,添加表情图标,图标放在一个dialog类型的activity中:首先在manifest中注册这个activity:1 <activity android:name=".IconDialog"2 android:configChanges="orientation"3 android:theme="@android:style/Theme.Dialog"4 />使用GridView布局,显示图标icon_dialog_activity.xml 1 <?xml v...
阅读全文
摘要:Canvas 作为绘制文本时,使用FontMetrics对象,计算位置的坐标。 它的思路和java.awt.FontMetrics的基本相同。 FontMetrics对象 它以四个基本坐标为基准,分别为: ・FontMetrics.top・FontMetrics.ascent・FontMetrics
阅读全文
摘要:这个问题我在网上看来很多方法,有些看得似懂非懂的,后来自己采用一种比较投机的方法,居然可行,呵呵,拿出来跟大家分享一下。其实就是把画的线向下偏移一定高度,当然针对不同分辨率,这个值也就不同;(因为我做的这个默认画15行,之后输入字符时也要检测,要保证两次画的线是一致的)代码 1 protected void onDraw(Canvas canvas) { 2 int count = getLineCount(); // method entends from TextView. 3 Rect r = mRect; 4 Paint paint = ...
阅读全文
摘要:25,//Notification,控制顶部状态栏的通知,不会自动消失,需要手动清除,//在notificationxml.xml文件中添加7个按钮View Code 1 public class SubNotificationActivity extends Activity { 2 private static int NOTIFICATIONS_ID = R.layout.activity_notification; 3 private NotificationManager mNotificationManager; 4 @Override 5 pro...
阅读全文
摘要:24,//Toast的使用<1>//Toast,界面上显示一个提示,长时间和短时间显示 ,在toast.xml文件中2个button 1 public class SubToastActivity extends Activity{ 2 private Button shortButton = null; 3 private Button longButton = null; 4 private static int NOTIFICATION_ID = R.layout.activity_toast; 5 @Override 6 protected vo...
阅读全文
摘要:23,//Service的应用<1>//manifest.xml对service注册<service android:name=".FirstService"></service><2>//Java文件 1 public class TestActivity extends Activity { 2 private Button startServiceButton = null; 3 private Button stopServiceButton = null; 4 @Override 5 public void onCr
阅读全文
摘要:22,//Dialog用法,7个小例子<1>//main.xmlView Code 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 android:layout_width="fill_parent" 4 android:layout_height="fill_parent" 5
阅读全文
摘要:21,//Content Provider 数据共享机制<1>//在minifest.xml文件中注册<provider android:name="zjq.contentprovider.FirstContentProvider" android:authorities="zjq.contentprovider.FirstContentProvider" />//main.xml文件中添加一个TextView和两个ButtonJava文件<2>//创建一个数据库的工具类 1 public class FirstPro
阅读全文
摘要://Broadcase用法<!--使用SMS_ACTION时需要在 manifest.xml中 添加用户权限 -->1 <uses-permission android:name="android.permission.RECEIVE_SMS"></uses-permission>//发送广播的TestBCActivity,文件如下: 1 public class TestBCActivity extends Activity { 2 /** Called when the activity is first created. */ 3
阅读全文
摘要:18,//Handle用法//创建一个Handler对象 1 //创建一个Handler对象 2 Handler handler = new Handler(); 3 //将要执行的操作写在线程对象的run方法当中 4 Runnable updaterThread = new Runnable(){ 5 6 @Override 7 public void run() { 8 // TODO Auto-generated method stub 9 System.out.println("U...
阅读全文
摘要:16,//ProgressBar使用xml文件中定义ProgressBar//水平进度条1 <ProgressBar 2 android:id="@+id/firstBar"3 style="?android:attr/progressBarStyleHorizontal"4 android:layout_width="200dp"5 android:layout_height="wrap_content"6 android:visibility="gone"<!--默认状态不可见
阅读全文
摘要:15,//ListView//main.xml 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 android:layout_width="fill_parent" 4 android:layout_height="fill_parent" 5 android:orientation=&quo
阅读全文