Como indexar dados locais de aplicativo

Applies to Windows only

No Windows 8, você pode indexar os dados locais armazenados de seu aplicativo através do WSS (Windows Search Service).

Se o seu aplicativo gerencia arquivos como documentos, emails ou mídia (fotos, músicas, vídeos, etc.), ele deve atender a um requisito central para indexar o conteúdo ou as propriedades dos arquivos de forma estrutural, para que os usuários possam gerenciar e recuperar os dados de forma rápida e eficiente. Não é necessário criar o indexador no aplicativo. Há uma opção prática e segura para desenvolvedores de aplicativos como você: basta habilitar o WSS para indexar os dados do aplicativo.

As principais vantagens do uso do WSS para indexar os dados do aplicativo são:

  • O WSS permite a indexação de todo o texto do conteúdo dos tipos de documentos mais usados. Além disso, o WSS também permite a indexação de propriedades de arquivos.
  • Com o contrato de pesquisa interno e APIs de arquivos, fica fácil obter e reutilizar dados indexados.
  • O Windows Search respeita as configurações de segurança do sistema de arquivos, que mantêm os dados de aplicativos indexados armazenados com segurança no indexador do Windows.
O Windows Search funciona com todos os aplicativos da Windows Store, inclusive os que são escritos em JavaScript, C#, C++ e VB.Net.

Habilitando o Windows Search no aplicativo

Solicitar que o Windows Search indexe os dados do aplicativo não necessita esforço. Você precisa criar uma pasta chamada indexed u na pasta de dados de aplicativos e armazenar o conteúdo que precisa ser indexado dentro dela. O Windows Search trata a pasta de indexação como qualquer outro local de indexação no disco rígido. Ele irá indexar o conteúdo do arquivo ou metadados do arquivo (propriedades) nesta pasta e em todas as subpastas. Aqui está uma lista de considerações importantes:

  1. A pasta "indexed" deve seguir estas diretrizes:
    • A pasta de indexação deve ser criada sob a raiz localFolder. O Windows Search indexa o conteúdo profundamente em sua pasta. Qualquer arquivo localmente armazenado nesta pasta ou suas subpastas (incluindo todos os níveis de subpastas) será indexado. Somente é permitida uma pasta indexada por aplicativo.
    • O nome da pasta indexed ignora maiúsculas ou minúsculas.
    • Apesar da pasta de dados do aplicativo ser chamada localFolder na API do Tempo de Execução do Windows , ela é chamada LocalState no disco rígido físico. Se você deseja acessar esta pasta para finalidades de teste, use o caminho de pasta: %user%\ AppData\Local\Packages\%packageName%\LocalState
    • A estrutura da pasta sob indexed pode ser profunda, mas a API do Windows não permite que o comprimento do caminho para um arquivo/pasta seja maior que MAX_PATH, definido como 260 caracteres. Então você precisa garantir que os arquivos ou as pastas sob a pasta "indexed" não excedam esse limite. Saiba mais sobre MAX_PATH em Limitação de Comprimento Máximo do Caminho.
  2. O Windows Search indexa somente os dados armazenados localmente, portanto, somente os arquivos armazenados localmente na pasta de indexação ou suas subpastas serão indexados.
  3. A pasta de indexação não pode ser criada durante a instalação. Ela somente pode ser criada quando o aplicativo está em execução. Visto que leva tempo para o Windows Search concluir, dependendo do tamanho do conteúdo, recomendamos que você crie a pasta de indexação quando o aplicativo é executado pela primeira vez. Uma vez que a pasta de indexação for criada, o Windows Search irá indexar o conteúdo do aplicativo automaticamente. Se os arquivos ou subpastas forem modificados (adicionados, excluídos ou atualizados), o Windows Search reagendará automaticamente um processo de indexação e manterá o indexador atualizado com as mudanças. Observe que o Windows Search monitora a utilização da CPU para otimizar o processo de indexação dentro da sua própria agenda.

Segurança

O WSS respeita as configurações de segurança do sistema de arquivos do Windows para que os dados de aplicativos indexados sejam armazenados no indexador de forma segura. Em particular:

  • Quando há várias contas de usuário no mesmo computador: Os aplicativos da Windows Store são instalados por conta de usuário. Quando há vários usuários no mesmo computador usando o mesmo aplicativo, cada instância do aplicativo cria sua própria pasta indexada em outro caminho físico. Dessa forma, um usuário não poderá acessar os dados indexados de outras contas, a menos que ele tenha obtido acesso a esse caminho físico.
  • Quando são indexados dados de vários aplicativos: O sistema de arquivos do Windows não permite que um aplicativo acesse os dados diretamente de outro aplicativo. Assim, um aplicativo não tem acesso aos dados indexados de outro aplicativo.

Obtendo conteúdo indexado

Após a indexação dos dados de aplicativo, o aplicativo poderá obtê-los por meio da API de arquivo.

Tópicos relacionados

Serviço Windows Search
Como o serviço Windows Search indexa o conteúdo por meio de IFilters
Adicionando pesquisa a aplicativos da Windows Store

 

 

Mostrar:
© 2014 Microsoft