当前位置:操作系统 > 安卓/Android >>

[Andorid应用开发]-(1)博客总结,记在专栏之前

(1) Launcher中预设Widget(即通过修改配置文件在Launcher上添加Widget)在Launcher目录下的default_workspace.xml文件中将需要添加的Widget编写如下配置即可


[html]
<appwidget 
        launcher:packageName="com.android.music"  
        launcher:className="com.android.music.MediaAppWidgetProvider" 
        launcher:screen="3" 
        launcher:x="0" 
        launcher:y="0" 
        launcher:spanX="4" 
        launcher:spanY="1" /> 

<appwidget
        launcher:packageName="com.android.music"
        launcher:className="com.android.music.MediaAppWidgetProvider"
        launcher:screen="3"
        launcher:x="0"
        launcher:y="0"
        launcher:spanX="4"
        launcher:spanY="1" />
其中的属性就不多加以说明了,在博客链接中可以看到,这里要说明的是,添加widget后,编译安装后并没有发现想要的效果,这时可将launcher.db这个数据库删除就可以看到效果了。

(2) Launcher上添加动画特效,这篇文章大可不看,不过我在此推荐过的一个Gif处理软件可以供参考,Ulead GIF Animator 5 ,这个工具可将gif图片处理成单张图片,以及制作gif图片

(3) 全屏显示(隐藏状态栏)的方式,主要是以下代码段

[java]
// 2.3上可用,ics已经不可用了  
WindowManager.LayoutParams attrs = getWindow().getAttributes(); 
attrs.flags |= WindowManager.LayoutParams.FLAG_FULLSCREEN; // 全屏显示  
//attrs.flags &= (~WindowManager.LayoutParams.FLAG_FULLSCREEN); // 取消全屏显示  
getWindow().setAttributes(attrs); 

// 2.3上可用,ics已经不可用了
WindowManager.LayoutParams attrs = getWindow().getAttributes();
attrs.flags |= WindowManager.LayoutParams.FLAG_FULLSCREEN; // 全屏显示
//attrs.flags &= (~WindowManager.LayoutParams.FLAG_FULLSCREEN); // 取消全屏显示
getWindow().setAttributes(attrs);
在ICS上若要隐藏状态栏也就是SystemUI,那是做不到的,为什么呢?因为ICS去掉了返回菜单的硬按键,取而代之的是SystemUI上的几个按钮,如果能全屏隐藏,那么一些流氓软件就可放肆了,开机给启动一个全屏显示的应用程序,而你却无法按菜单返回按钮,看你怎么办,为了实际的需求,还是实现了这个功能,只是在点击状态栏时可恢复状态栏模式,实现此功能只需要在Activity的Oncreate方法中添加如下代码即可:

[java]
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LOW_PROFILE); 

getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LOW_PROFILE);


(4)Android数据共享及数据存储方式。关于Android数据存储的方式有好几种,在这篇博客中只介绍了SharedPreferences数据共享,通过两个应用程序一个用来读取一个用来写数据的方式演示数据共享的简单操作方式,很简单。在这个系列的专栏中讲会有一篇博客专门用于介绍Android数据存储的文章,敬请期待!

(5)Android向状态栏发送通知,即Notification的使用[java] view plaincopyprint?NotificationManager manager = (NotificationManager) getSystemService(Context.NOTIFICAT ION_SERVICE);  
Notification notification = new Notification(); 
notification.icon = R.drawable.ic_launcher; 
notification.tickerText = "Notification"; 
notification.when = System.currentTimeMillis(); 
notification.setLatestEventInfo(this, "title", "content", null); 
manager.notify(100, notification); 
manager.cancel(100); // 清除制定id的通知  
manager.cancelAll(); // 清除所有通知 

NotificationManager manager = (NotificationManager) getSystemService(Context.NOTIFICAT ION_SERVICE);
Notification notification = new Notification();
notification.icon = R.drawable.ic_launcher;
notification.tickerText = "Notification";
notification.when = System.currentTimeMillis();
notification.setLatestEventInfo(this, "title", "content", null);
manager.notify(100, notification);
manager.cancel(100); // 清除制定id的通知
manager.cancelAll(); // 清除所有通知(6)更改Launcher抽屉图标,这个较简单,不介绍了,看博客吧。

(7)Android StatusBar修改,这里只是做一个简单的背景修改。将背景修改为黑色后,由于时间显示的颜色是黑色所以同时要将时间修改为白色或其他颜色。真是易做图的需求!当然在2.1到2.3之间往往需要添加菜单、Home键等,这些网上都有,而且很全,不列举了。

(8)Android获取Google Weather数据并通过xml和JSON解析数据。文中有详细的描述,关于XML数据的解析请参考东子哥的博客,这里有非常详尽的讲解


(9) Widget开发总结,介绍如何通过点击Widget打开Activity,如何更新界面等

(10) 使用传感器获取数据,介绍各种传感器及使用方法

(11) Android静默方式批量安装和卸载应用程序,这部分api在Android4.0中有改变,文中的博客是调用Android2.3实现的。

(12) Android测试功能,这篇博客包括了Android中大多数api的使用技巧和实现方式,非常有参考意义,通过实现测试功能让我更了解Android英语开发。

(13) Launcher扩展(防Ipad Dockbar,HTC预览图,批量添加快捷方式,启用3D特效等)

(14) 给Launcher添加壁纸的方法

(15) Android兼容性测试资料方法等介绍

(16)  Activity生命周期详解

(17) 如何在应用程序中显示Widget

(18) Android加水印的方法及截图功能

(19)  Android换肤功能实现

(20) Android论坛博客学习推荐等

(21)  ListView的拖动功能,支持删除

(22) WebView的使用

(23) Android录音功能

(24)  Android串口编程原理和实现方式,这篇博客的发表很多人都来问,提问的多数是一些基础问题,这里要说明的有以下几点,这些原因可能导致你收不到数据或者显示乱码

(1) 应用程序的工程编码必须改为UTF-8

(2) 串口波特率必须设置正确

(3) 串口数据发送多数是16禁止进行发送的,发送要注意转换

(4) 检查你的设备是否添加驱动以及方案是否支持你设置的波特率,比如说有些方案,波特率低就出现丢帧的现象而导致乱码


(25)Android拍照功能,有些MID或者手机都有前后置摄像头,在做开发时,需要在前后摄像头进行切换,或者默认制定打开前置还是后置摄像头的功能,这篇博客中没有涉及到前后摄像头的编码,这里简单分享下

[java] 
public void su易做图ceCreated(Su易做图ceHolder holder) { 
    int numCameras = Camera.getNumberOfCameras(); 
    if (numCameras != -1) { 
        for (int i = 0; i < numCameras; i++) { 
            CameraInfo info = new CameraInfo(); 
            Camera.getCameraInfo(i, info); 
            if (selectorCamera == 1) { 
                if (info.facing == CameraInfo.CAMERA_FACING_BACK) { 
                    camera = Camera.open(i); 
                } 
            } else if (selectorCamera == 0) { 
                if (info.facing == CameraInfo.CAMERA_FACING_FRONT) { 
&

补充:移动开发 , Android ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,