Како отворити средства у Андроиду

Андроид оквир пружа многе опције за задатке које ваш програм мора обавити, а АссетМанагер класа нуди алтернативу Ресурсима које би ваш пројект обично користио за усмјеравање бајтова у програм у вријеме извођења. Употреба АссетМанагер-а уместо Ресоурцес-а вам омогућава да унесете прилагођене формате које Андроид оквир не може рашчланити, и омогућава вам да инстанцирате објекте користећи ИнпутСтреам класу познату Јава програмерима. Интерфејс АссетМанагер је једноставан, ефикасан и захтева само неколико редова кода.

1.

Кликните десним тастером миша на основну фасциклу вашег Андроид пројекта и кликните на “Нев фолдер”. Именујте фасциклу “ассетс” и кликните “Финисх”.

2.

Отворите претраживач датотека на радној површини и држите притиснут тастер "Цтрл" док кликате да бисте изабрали датотеке које желите да пренесете на ваш програм. Притисните “Цтрл-Ц” за копирање датотека у клипборд. Кликните на фасциклу “ассетс” вашег пројекта - фасциклу коју сте управо креирали - и притисните “Цтрл-В” да бисте налепили датотеке.

3.

Инстантате АссетМанагер у свој код додавањем следећег реда:

АссетМанагер ам = гетЦонтект (); гетАссетс ();

Додајте ову линију непосредно пре него што морате да користите АссетМанагер или, ако је користите у више од једног метода, задржите је као променљиву члана. Да бисте то урадили, декларишите променљиву изван било које методе и инстанцирајте је у конструктору.

4.

Отворите датотеку у фасцикли са својствима инстанцирањем објекта ИнпутСтреам унутар пробног блока. На пример, откуцајте следеће:

ИнпутСтреам је = нулл; три {ис = ам.опен ("филе_наме.киз"); } цатцх (ФилеНотФоундЕкцептион ек) {}

Замените "филе_наме.киз" са именом ваше датотеке и његовим проширењем унутар пара двоструких наводника.

5.

Направите бајт бајт за држање бајтова из улазног тока позивањем "реад" методе објекта ИнпутСтреам. Доделите меморију за бафер са кодом сличним следећем:

инт сизе = ис.аваилабле (); бите [] буффер = нови бајт [величина]; ис.реад (бафер);

6.

Инстантирајте објекат користећи бајтове из улазног тока. На пример, класа Јава Стринг има конструктора са параметром низа бајтова који можете директно да изведете са следећим кодом:

Стринг стринг = нев Стринг (бафер);

Ако читате бајтове за класу коју сте дефинисали, додајте конструктор који узима низ бајтова као аргумент.

Савет

  • Пренесите низ бајтова на унапред дефинисани или кориснички дефинисани конструктор, уместо да га анализирате у дефиницији Андроид активности. Ова процедура одржава ваш пројекат организованим и лакшим за читање и отклањање грешака.