Разработка и сопровождение приложений на базе операционной системы Android

Общие характеристики операционной системы Android. Разработка приложения на основе создания менеджера файлов. Получение с помощью приложения доступа к файлам, хранящимся в "облачном хранилище" в сети Интернет. Расчет стоимости программного обеспечения.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 03.04.2015
Размер файла 2,7 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

fill (aDirectory. listFiles ());

// Установка текста заголовка

TextView titleManager = (TextView) findViewById (R. id. titleManager);

titleManager. setText (aDirectory. getAbsolutePath ());

}

else {

// При открытии файла запускается диалог

OnClickListener okButtonListener = new OnClickListener () {

public void onClick (DialogInterface arg0, int arg1) {

Intent i = new Intent (android. content. Intent. ACTION_VIEW, Uri. parse ("file: // " + aDirectory. getAbsolutePath ()));

startActivity (i);

}

};

OnClickListener noButtonListener = new OnClickListener () {

public void onClick (DialogInterface arg0, int arg1) {

// Ничего не делать

}

};

// Создание диалога

new AlertDialog. Builder (this)

. setTitle ("Подтверждение") // Заголовок

. setMessage ("Хотите открыть файл "+ aDirectory. getName () + "?") // Сообщение

. setPositiveButton ("Да", okButtonListener) // Кнопка подтверждения

. setNegativeButton ("Нет", noButtonListener)

. show ();

}

}

// Заполнение списка

private void fill (File [] files) {

try {

// Очистка списка

this. directoryEntries. clear ();

if (this. currentDirectory. getParent ()! = null)

this. directoryEntries. add (". ");

// Добавление всех файлов в список

for (File file: files) {

this. directoryEntries. add (file. getAbsolutePath ());

}

// Создание ArrayAdapter'a для отображения списка

ArrayAdapterForList directoryList = new ArrayAdapterForList (this, this. directoryEntries);

this. setListAdapter (directoryList);

}

catch (Exception e)

{

Toast. makeText (this, "Нет прав для доступа",

2). show ();;

}

}

// При нажатии пункта списка

@Override

protected void onListItemClick (ListView l, View v, int position, long id) {

// При выключенном множественном выборе

if (! multiSelection) {

String item = (String) getListAdapter (). getItem (position);

Toast. makeText (this, item + " выбран",

2). show ();

// Получение названия выбранного файла

int selectionRowID = position;

String selectedFileString = this. directoryEntries. get (selectionRowID);

// Если выбрано"." поднимаемся выше

if (selectedFileString. equals (". ")) {

this. upOneLevel ();

}

else {

// Обзор выбранного файла или каталога функцией browseTo ()

File clickedFile = null;

clickedFile = new File (selectedFileString);

if (clickedFile! = null) {

this. browseTo (clickedFile);

}

}

}

else{

}

}

}

Файл ArrayAdapterForList. java

package ru. mail. korgik46. filemanager;

import java. io. File;

import java. util. List;

import android. app. Activity;

import android. view. LayoutInflater;

import android. view. View;

import android. view. ViewGroup;

import android. widget. ArrayAdapter;

import android. widget. ImageView;

import android. widget. TextView;

/** Определение адаптера для списка */

public class ArrayAdapterForList extends ArrayAdapter<String> {

private final Activity context;

private final List<String> itemTitle;

private File currentDirectory;

static final int TYPE_OF_ITEM = R. layout. row;

public ArrayAdapterForList (Activity context, List<String> directoryEntries) {

super (context, TYPE_OF_ITEM, directoryEntries);

this. context = context;

this. itemTitle = directoryEntries;

}

/** View-holder pattern */

static class ViewHolder {

public ImageView imageViewHolder;

public TextView titleViewHolder;

public ImageView selectHolder;

}

@Override

public View getView (int position, View convertView, ViewGroup parent) {

ViewHolder holder;

currentDirectory = new File ("itemTitle. get (position)");

View rowView = convertView;

if (rowView == null) {

LayoutInflater inflater = context. getLayoutInflater ();

rowView = inflater. inflate (TYPE_OF_ITEM, null, true);

holder = new ViewHolder ();

holder. imageViewHolder = (ImageView) rowView. findViewById (R. id. imageViewForIcon);

holder. titleViewHolder = (TextView) rowView. findViewById (R. id. textViewForName);

holder. selectHolder = (ImageView) rowView. findViewById (R. id. imageViewForSelect);

rowView. setTag (holder);

}

else {

holder = (ViewHolder) rowView. getTag ();

}

if (! currentDirectory. isDirectory ()) {

holder. imageViewHolder. setImageResource (R. drawable. ic_menu_folder);

}

else

holder. imageViewHolder. setImageResource (R. drawable. ic_menu_file);

holder. titleViewHolder. setText (itemTitle. get (position));

return rowView;

}

}

Файл AndroidManifest. xml

<? xml version="1.0" encoding="utf-8"? >

<manifest xmlns: android="http://schemas. android.com/apk/res/android"

package="ru. mail. korgik46. filemanager"

android: versionCode="1"

android: versionName="1.0" >

<uses-sdk android: minSdkVersion="7" />

<uses-permission android: name="android. permission. WRITE_EXTERNAL_STORAGE"/>

<uses-permission android: name="android. permission. INTERNET"/>

<application

android: icon="@drawable/ic_launcher"

android: label="@string/app_name" >

<activity

android: name=". MainActivity"

android: label="@string/app_name" >

<intent-filter>

<action android: name="android. intent. action. MAIN" />

<category android: name="android. intent. category. LAUNCHER" />

</intent-filter>

</activity>

<activity android: name="NavigationActivity"

android: configChanges="keyboardHidden|orientation">

</activity>

</application>

</manifest>

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.