Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Presbiopia - la 43 ani ?

Termen transcriere autovehicul

Cazare Timisoara pe 4-5 zile

Primele zile ale internetului per...
 Ditra 25

Casti USB-C ptr A-54

Aplicatie medicala / asistent med...

De ce vor atația politicieni...
 ERR_ADDRESS_UNREACHABLE

Legea 18/1968 Se mai aplica?

Digi conectare 2 routere prin fir

Succesiune notar versus instanta ...
 Montaj aer conditionat in balcon ...

Cont curent mulți valuta far...

Sugestii plan casa

Experiente cu firme care cumpara ...
 

Problema Development Aplicatie Android

- - - - -
  • Please log in to reply
11 replies to this topic

#1
mitzu2250

mitzu2250

    Junior Member

  • Grup: Members
  • Posts: 68
  • Înscris: 02.12.2007
Salut,

Nu am gasit o rubrica specifica asa ca voi posta aici.
Am inceput sa lucrez la licenta, trebuie sa fac un joculet in Android.

Problema mea e ca nu am mai lucrat pana acum in Android, e destul de usor parearea mea, incerc sa ma adaptez.

Am urmatoarele probleme:
Am facut aplicatia care contine urmatoarele activities : Meniu, Level Select si 9 Activitati cu levele.

1. Rulez aplicatia prin USB Debugging. Pe tableta cu 4.2.2 imi afiseara backgroundul setat in XML. Pe telefon cu 4.4.2 (S4) nu imi seteaza backgroundul.

2. Rulez aplicatia si merg din Meniu > Level Select > Back > Level Select merge.
Cand incerc combinatia Meniu > Level Select > Level 1 > Back > Back > Level Select, aplicatia se inchide.
(Combinatia Meniu > Level Select > Level 1 > Back > Level 2 > Back > Level x > Back merge. Daca ma intorc pe Meniu si dau Level Select, pica.

Banuiala mea este ca nu stiu eu ceva despre cum functioneaza activitatile si de aceea cand mai deschide un Level Select pica.

Sper ca ma poate ajuta cineva.

Multumesc anticipat.

Imi pare rau daca am postat gresit aici, mutati in sectiunea corespunzatoare daca se poate.

#2
paulicaFX

paulicaFX

    Member

  • Grup: Members
  • Posts: 792
  • Înscris: 08.08.2011
Ai logat. Acolo sunt erorile, pune aici stack trace-ul.

Sa faci o activitate pt fiecare nivel nu e deloc bine, in ce consta un nivel?

#3
mitzu2250

mitzu2250

    Junior Member

  • Grup: Members
  • Posts: 68
  • Înscris: 02.12.2007
Ce vad ciudat in logcat :
- dupa ce dau 2 x back pana in meniul principat :
I/Choreographer﹕ Skipped 30 frames!  The application may be doing too much work on its main thread.

- cand incerc sa intru iar pe Level Select :
04-02 16:15:17.710  12626-12626/mitzu.licenta E/dalvikvm-heap﹕ Out of memory on a 4896016-byte allocation.
04-02 16:15:17.720  12626-12626/mitzu.licenta I/dalvikvm﹕ [ 04-02 16:15:17.730 12626:12626 D/skia	 ]
	--- decoder->decode returned false
04-02 16:15:17.730  12626-12626/mitzu.licenta D/AndroidRuntime﹕ Shutting down VM
04-02 16:15:17.730  12626-12626/mitzu.licenta W/dalvikvm﹕ threadid=1: thread exiting with uncaught exception (group=0x40b6b930)
04-02 16:15:17.810  12626-12626/mitzu.licenta E/AndroidRuntime﹕ FATAL EXCEPTION: main
	java.lang.OutOfMemoryError
			at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
			at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:502)
			at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:355)
			at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:785)
			at android.content.res.Resources.loadDrawable(Resources.java:1965)
			at android.content.res.TypedArray.getDrawable(TypedArray.java:601)
			at android.view.View.<init>(View.java:3330)
			at android.widget.TextView.<init>(TextView.java:583)
			at android.widget.Button.<init>(Button.java:107)
			at android.support.v7.internal.widget.TintButton.<init>(TintButton.java:46)
			at android.support.v7.internal.widget.TintButton.<init>(TintButton.java:42)
			at android.support.v7.app.ActionBarActivityDelegateBase.createView(ActionBarActivityDelegateBase.java:802)
			at android.support.v7.app.ActionBarActivity.onCreateView(ActionBarActivity.java:548)
			at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:676)
			at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
			at android.view.LayoutInflater.rInflate(LayoutInflater.java:749)
			at android.view.LayoutInflater.rInflate(LayoutInflater.java:749)
			at android.view.LayoutInflater.rInflate(LayoutInflater.java:749)
			at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
			at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
			at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
			at android.support.v7.app.ActionBarActivityDelegateBase.setContentView(ActionBarActivityDelegateBase.java:240)
			at android.support.v7.app.ActionBarActivity.setContentView(ActionBarActivity.java:102)
			at mitzu.licenta.LvlSelect.onCreate(LvlSelect.java:21)
			at android.app.Activity.performCreate(Activity.java:5104)
			at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
			at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
			at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
			at android.app.ActivityThread.access$600(ActivityThread.java:141)
			at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
			at android.os.Handler.dispatchMessage(Handler.java:99)
			at android.os.Looper.loop(Looper.java:137)
			at android.app.ActivityThread.main(ActivityThread.java:5041)
			at java.lang.reflect.Method.invokeNative(Native Method)
			at java.lang.reflect.Method.invoke(Method.java:511)
			at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:817)
			at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)
			at dalvik.system.NativeStart.main(Native Method)


Legat de activitati, nu am avut alta idee, din cate am inteles, pot sa fac cu fragmente dar cred ca e acelsi lucru.
Jocul este de timpul Hidden Object Game, nu au legatura nivelele unele cu altele.

#4
daemon

daemon

    Active Member

  • Grup: Members
  • Posts: 1,540
  • Înscris: 08.12.2001
"Out of memory on a 4896016-byte allocation."

Incearca sa nu pui imagini mari ca background, daca ai o culoare principala de fundal sa o pui din cod (ca background in xml) si peste ea sa construiesti layout-ul din elemente distincte, pe cat posibil. Multe se pot face din xml sau din cod, in loc sa folosesti imagini mari, exact ca la html/css.

#5
mitzu2250

mitzu2250

    Junior Member

  • Grup: Members
  • Posts: 68
  • Înscris: 02.12.2007
Imaginile au rezolutia de 1080 x 1920. Se pot considera mari ?

Le-am facut la jumate, din cate vad merge ok pana acum. Credeam ca daca am imagini mari, normal, o sa se vada mai bine.

Pe telefon tot nu imi apare backgroundul si cand apas pe primul buton (sa ajung la Level Select) primesc urmatoarele : (android 5.0.1 a intrat de dimineata)
04-02 16:57:40.296 23734-23734/mitzu.licenta E/Zygote﹕ MountEmulatedStorage()
04-02 16:57:40.296 23734-23734/mitzu.licenta E/Zygote﹕ v2
04-02 16:57:40.367 23734-23734/mitzu.licenta E/SELinux﹕ [DEBUG] get_category: variable seinfo: default sensitivity: NULL, cateogry: NULL
04-02 16:58:02.989 23734-23734/mitzu.licenta E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: mitzu.licenta, PID: 23734
java.lang.IllegalStateException: Could not find a method new_game(View) in the activity class android.view.ContextThemeWrapper for onclick handler on view class android.widget.Button with id 'button'
		 at android.view.View$1.onclick(View.java:4240)
		 at android.view.View.performClick(View.java:5197)
		 at android.view.View$PerformClick.run(View.java:20926)
		 at android.os.Handler.handleCallback(Handler.java:739)
		 at android.os.Handler.dispatchMessage(Handler.java:95)
		 at android.os.Looper.loop(Looper.java:145)
		 at android.app.ActivityThread.main(ActivityThread.java:5944)
		 at java.lang.reflect.Method.invoke(Native Method)
		 at java.lang.reflect.Method.invoke(Method.java:372)
		 at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1389)
		 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1184)
	 Caused by: java.lang.NoSuchMethodException: new_game [class android.view.View]
		 at java.lang.Class.getMethod(Class.java:665)
		 at android.view.View$1.onclick(View.java:4233)
			at android.view.View.performClick(View.java:5197)
			at android.view.View$PerformClick.run(View.java:20926)
			at android.os.Handler.handleCallback(Handler.java:739)
			at android.os.Handler.dispatchMessage(Handler.java:95)
			at android.os.Looper.loop(Looper.java:145)
			at android.app.ActivityThread.main(ActivityThread.java:5944)
			at java.lang.reflect.Method.invoke(Native Method)
			at java.lang.reflect.Method.invoke(Method.java:372)
			at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1389)
			at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1184)


Pe mine ma bate ideea ca pe tableta merge si pe telefon nu, desi stiu ca sunt alte versiuni ale sistemului dar ... chiar sa conteze asa de mult, ma gandesc ca aplicatiile proiectate pe sisteme 'vechi' ar trebui sa fie suportate de versiunile noi de OS.

Edited by mitzu2250, 02 April 2015 - 15:59.


#6
daemon

daemon

    Active Member

  • Grup: Members
  • Posts: 1,540
  • Înscris: 08.12.2001
Daca ai 1-2GB de memorie pe device nu inseamna ca te si lasa sa o folosesti pe toata la aplicatia ta. Da, sunt mari. Pe un device cu mai putina memorie iti poate crapa.

Logcat-ul e destul de explicit:

"java.lang.IllegalStateException: Could not find a method new_game(View) in the activity class android.view.ContextThemeWrapper for onclick handler on view class android.widget.Button with id 'button'"  = ai folosit "new_game" aiurea

#7
mitzu2250

mitzu2250

    Junior Member

  • Grup: Members
  • Posts: 68
  • Înscris: 02.12.2007
Multumesc pentru raspuns.

O sa ma documentez mai mult cu apelarea functiilor si daca nu imi iese revin aici.

Ideea este ca acelasi cod merge pe tableta 4.2.2 dar nu merge pe telefon 5.0.
Functia new_game este apelata la on_click pe butonul New Game din meniul principal si porneste activitatea Level Select.

DIn eroare eu inteleg ca el incearca sa gaseasca new_game in clasa android.view.ContextThemeWrapper in loc sa o caute in clasa Main (din fisierul Main.java asociat meniului).

#8
daemon

daemon

    Active Member

  • Grup: Members
  • Posts: 1,540
  • Înscris: 08.12.2001
Sincer, fara bucata de cod respectiva e cam greu sa imi dau seama ce nu faci bine.

#9
mitzu2250

mitzu2250

    Junior Member

  • Grup: Members
  • Posts: 68
  • Înscris: 02.12.2007
Am rezolvat intre timp. Multumesc pentru ajutor.

Daca o sa mai am intrebari pe parcursul dezvoltarii o sa revin aici.

#10
mitzu2250

mitzu2250

    Junior Member

  • Grup: Members
  • Posts: 68
  • Înscris: 02.12.2007
Salut. Am reusit sa implementez majoritatea functionalitatilor.

Revin cu o intrebare.

Imi poate spune cineva cum pot implementa aparitia unui pop-ul ? Pana acum am folosit doar tranzitiile intre activitati si nu am gasit o modalitate de a afisa o informatie pe o parte din ecran.
Scopul lui este : la finalul jocului sa arate punctajul obtinut si cateva butoane.

#11
daemon

daemon

    Active Member

  • Grup: Members
  • Posts: 1,540
  • Înscris: 08.12.2001
Poti folosi AlertDialog:

http://developer.and...tml#AlertDialog

Pe aceeasi pagina ai mai jos si cum poti folosi un layout custom.

#12
paulicaFX

paulicaFX

    Member

  • Grup: Members
  • Posts: 792
  • Înscris: 08.08.2011
Sau http://developer.and...ogFragment.html

Anunturi

Chirurgia endoscopică a hipofizei Chirurgia endoscopică a hipofizei

"Standardul de aur" în chirurgia hipofizară îl reprezintă endoscopia transnazală transsfenoidală.

Echipa NeuroHope este antrenată în unul din cele mai mari centre de chirurgie a hipofizei din Europa, Spitalul Foch din Paris, centrul în care a fost introdus pentru prima dată endoscopul în chirurgia transnazală a hipofizei, de către neurochirurgul francez Guiot. Pe lângă tumorile cu origine hipofizară, prin tehnicile endoscopice transnazale pot fi abordate numeroase alte patologii neurochirurgicale.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate