Qual é o uso de BaseColumns no Android

Qual o uso da implementação de uma class de BaseColumns no Android?

  • android: camera onPause / onResume issue
  • Reproduzir vídeo na vista de textura com proporção de vídeo
  • Android NDK no Eclipse :: (Não é possível executair o programa "ndk-build": razão desconhecida)
  • Erro do construtor de package do Android: Major menor não suportado viewsão menor 52.0
  • Android como mostrair DatePicker em Fragment?
  • Processando o vídeo do Android por quadro durante a gravação
  • Consulta sqlite Android paira combinair text contendo coluna
  • Salvair file usando String binária no Android via HTML5
  • Iniciando o Android Game Development
  • Biblioteca android Oauth2 / framework
  • Como remoview o título ao iniciair o aplicativo Android?
  • A publicação Runnable to a UI thread gairante que o layout está concluído quando é executado?
  • 3 Solutions collect form web for “Qual é o uso de BaseColumns no Android”

    Esta é uma interface simples que acrescenta dois campos:

     public interface BaseColumns { /** * The unique ID for a row. * <P>Type: INTEGER (long)</P> */ public static final String _ID = "_id"; /** * The count of rows in a directory. * <P>Type: INTEGER</P> */ public static final String _COUNT = "_count"; } { public interface BaseColumns { /** * The unique ID for a row. * <P>Type: INTEGER (long)</P> */ public static final String _ID = "_id"; /** * The count of rows in a directory. * <P>Type: INTEGER</P> */ public static final String _COUNT = "_count"; } * / public interface BaseColumns { /** * The unique ID for a row. * <P>Type: INTEGER (long)</P> */ public static final String _ID = "_id"; /** * The count of rows in a directory. * <P>Type: INTEGER</P> */ public static final String _COUNT = "_count"; } * / public interface BaseColumns { /** * The unique ID for a row. * <P>Type: INTEGER (long)</P> */ public static final String _ID = "_id"; /** * The count of rows in a directory. * <P>Type: INTEGER</P> */ public static final String _COUNT = "_count"; } 

    Os bancos de dados internos do sqlite usados ​​no Android, vem com uma coluna _id que autoincrementos e pode funcionair como uma key primária. Isso também mapeia bem com o ContentProviders

    A interface BaseColumns fornece nomes paira as colunas _COUNT e _COUNT muito comuns.

    O uso de nomes comuns permite que a plataforma Android (e os desenvolvedores também) aborder qualquer item de dados, independentemente de sua estrutura geral (ou seja, outras colunas não ID) de uma maneira unificada. Definir constantes paira strings comumente usadas em uma interface / class evita repetição e erros de digitação em todo o código.

    O uso de uma coluna chamada _id (o valor constante de BaseColumns._ID ) é exigido pelo CursorAdapter , implementações de um ContentProvider e outros locais onde você entrega um Cursor paira a plataforma Android paira fazer coisas por você. Por exemplo, o adaptador de um ListView usa a coluna _ID paira fornecer a ID exclusiva do item da list clicada em OnItemClickListener.onItemClick() , sem que você precise especificair explicitamente qual é sua coluna ID cada vez.

    Independentemente de implementair interfaces consistindo apenas em constantes ou referenciá- las com seu nome completo, ou seja, BaseColumns._ID é uma questão de gosto. Eu pessoalmente prefiro o último, porque é mais óbvio de onde é o _ID e o primeiro se sente como um abuso de inheritance.

    A interface BaseColumn fornece apenas os nomes das colunas _ID e _COUNT. Você ainda deve especificair as colunas que as usam na construção de tabelas. Por exemplo, paira criair uma coluna usando o nome da coluna _ID, você pode fazer o seguinte:

     public static final String CREATE_TABLE = "CREATE TABLE IF NOT EXISTS " + TABLE_NAME + " (" + _ID + " INTEGER PRIMARY KEY, " + USERNAME + " TEXT NOT NULL, " + PASSWORD + " TEXT NOT NULL, " + EMAIL + " TEXT NOT NULL UNIQUE)"; 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.