任何问题请联系WX:uu16853

买模板送网站采集器 让你轻松放开双手运营网站!

购买更多有优惠!

Unknown URL content://这类Uri错误解析 Android开发技术

   有时候在Android数据库操作Uri时可能遇到类似Caused by: java.lang.IllegalArgumentException: Unknown URL content://xxx 这样的错误,出现 Unknown URL content 这样的关键词主要是,Uri前部分存在,而后面部分的数据不存在造成的,而出现类似 ActivityThread: Failed to find provider info for xxx 这样的是这个Uri根本就不存在,由于Android系统上系统的内置provider的content名称经常改变在不同版本的固件上可能出现这些问题,希望大家注意。

androidmanifest.xml高级属性解析 Android开发技术

  Android工程的的主配置文件androidmanifest.xml的一些高级属性大多数开发者可能不了解,下面我们一起来看一看。  支持的屏幕大小设置,我们可以显示的指定允许运行在:  <supports-screens           android:largeScreens="true"  //WVGA          android:normalScreens="true"  //HVGA          android:smallScreens="true"  //QVGA          android:resizable="true"            android:anyDensity="true" />  是否必须支持5位导航键才能使用,一般多用于游戏  <uses-configuration android:reqFiveWayNav="true" /> Android 2.1开始的Live Wallpaper特性要求 <uses-feature android:name="android.software.live_wallpaper" /> 必须保证设备包含了光线感应器  <uses-feature android:name="android.hardware.sensor.light" /> 设备OpenGL的支持版本,值为一个int型的整数。  <uses-feature android:openGlEsVersion="int">  Android开发网提示大家更多的androidmanifest.xml文件相关内容可以查找本站过去归档来了解更多。  引用一个外部的jar,一般在非Eclipse IDE中我们可以直接使用 <uses-library> 来实现。

android.text.format文件大小和日期解析类 Android开发技术

  很多网友可能直接将自己的J2ME项目生硬的移植到Android平台,其实Google为我们提供好了文件大小和时间日期解析类,它位于android.text.format这个包中,它提供了强大的标准化解析方法:   1. IP地址解析类 在android.text.format.Formatter中提供了String formatIpAddress(int addr) 这个方法可以轻松方便的将socket中的int型转成类似127.0.0.1的IP格式,需要注意的是Linux平台的字节顺序,即小字节序、低字节序little-endian。   2. 文件大小解析类 细心的网友可能还看到了android.text.format.Formatter中的formatFileSize方法,该方法String formatFileSize (Context context, long number) ,第二个参数是long型,一般为File对象的最后修改时间或创建时间的方法,最终返回类似 12KB、5Bytes的值,20MB的字符串。   3. 日期时间解析类 ,该类位于android.text.format.DateFormat这个package中,该类提供了Java中的三种时间对象,Android123提示大家下面三种方法为静态可以直接调用,如下:   final static CharSequence  format(CharSequence inFormat, Date inDate)  //传入Date对象  Given a format string and a Date object, returns a CharSequence containing the requested date.  final static CharSequence  format(CharSequence inFormat, Calendar inDate)  […]

Android Theme和Styles内部定义解析 Android开发技术

  昨天我们讲到的有关在AndroidManifest.xml中定义Activity的theme方法来实现无标题的方法,在使用xml让你的Activity无标题方法 一文中讲到的,很多网友不明白为什么这样做,其实在Android123以前的文章中多次提到了styles样式定义方法,今天Android开发网再次把一些网友回顾了解下android样式的内部定义。在一个工程的res/values/theme.xml中我们可以方便的定义自己的风格主题,比如下面的cwjTheme中我们使用了基于android内部的白色调的背景Theme.Light,设置windowsNoTitle为true代表没有标题,背景颜色我们使用了android内部定义的透明,同时设置listView控件的样式为cwjListView,xml样式代码如下:   <?xml version="1.0" encoding="utf-8"?>  <resources>   <style name="cwjTheme" parent="android:Theme.Light">     <item name="android:windowNoTitle">true</item>     <item name="android:windowBackground">@android:color/transparent</item>     <item name="android:listViewStyle">@style/cwjListView</item>   </style>   有关ListView控件我们自定义的风格就是修改下系统listview这个控件的每行分隔符样式,这里我们在工程下res/drawable文件夹下放一个图片名为list_selector图片,这样我们的cwjListView的代码可以这样写   <style name="cwjListView" parent="@android:style/Widget.ListView">       <item name="android:listSelector">@drawable/list_selector</item>     </style>  </resources>   通过定义style可以设置更多,比如让cwjListView的字体颜色就加入textAppearance属性,比如 <item name="textAppearance">@android:style/TextAppearance</item> 等等。

ApiDemos中的Android Widget例子解析 Android开发技术

   今天继续我们的Android Widget开发之旅,看看Android SDK中ApiDemos上的Widget例子,下面的代码分为3个文件可以清楚的看到整个框架,主要是AppWidgetProvider类中的onUpdate、onDeleted、 onEnabled、onDisabled和updateAppWidget方法之间的状态改变,使用Logcat仔细分析一个widget的生命周期。  package com.example.android.apis.appwidget; import android.appwidget.AppWidgetManager;import android.appwidget.AppWidgetProvider;import android.content.ComponentName;import android.content.Context;import android.content.Intent;import android.content.pm.PackageManager;import android.os.SystemClock;import android.util.Log;import android.widget.RemoteViews; import java.util.ArrayList;import com.example.android.apis.R; 涉及到的文件有 ExampleAppWidgetConfigure.javaExampleBroadcastReceiver.javares/layout/appwidget_configure.xmlres/layout/appwidget_provider.xmlres/xml/appwidget_provider.xml public class ExampleAppWidgetProvider extends AppWidgetProvider {     private static final String TAG = "ExampleAppWidgetProvider"; //logcat调试信息     public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {        Log.d(TAG, "onUpdate");         //   – 创建一个RemoteViews 对象        //   – […]

100% Secure Checkout

PayPal / MasterCard / Visa