עזרה|טיימר שאחרי דקה יעביר לאקטיביט אחר

פורום המפתחים ך- Android SDK. שאלות, רעיונות ונושאים אחרים.

מנהל: מנהלי פורומים

עזרה|טיימר שאחרי דקה יעביר לאקטיביט אחר

הודעהעל ידי acavihai ב ה', 19 ינואר 2012, 13:55

אני פשוט משתגע לא משנה מה ניסיתי זה קורס מישהו יכול להסביר לי מה לתקן?
Oneplayer:
קוד: בחר הכל
package com.HungryMonster;

public class Oneplayer extends Activity
{

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
           setContentView(R.layout.main);
           MyCount counter = new MyCount(5000,1000);
           counter.start();
           }
}


MyCount:
קוד: בחר הכל
package com.HungryMonster;

import android.content.Intent;
import android.os.CountDownTimer;

public class MyCount extends CountDownTimer
{
   public MyCount(long millisInFuture, long countDownInterval)
   {
      super(millisInFuture, countDownInterval);
      // TODO Auto-generated constructor stub
   }
   @Override
   public void onFinish()
   {
      Main m1=new Main();
      Intent i=new Intent(null, Main.class);
      m1.startActivity(i);      
   }
   @Override
   public void onTick(long millisUntilFinished) {
      // TODO Auto-generated method stub
   }
}
נערך לאחרונה על ידי acavihai בתאריך ה', 19 ינואר 2012, 15:14, נערך 2 פעמים בסך הכל.
acavihai
 
הודעות: 176
הצטרף: ג', 11 ינואר 2011, 22:30

מכשיר: Samsung Galaxy S I 9000
גירסא:

Re: עזרה|טיימר שאחרי דקה יעביר לאקטיביט אחר

הודעהעל ידי leon21a ב ה', 19 ינואר 2012, 14:05

בגדול תבדוק אם הגדרתה BroadcastReceiver , ואני חושב שאתה יכול לראות דוגמא בקישור הבא : http://stackoverflow.com/questions/4741757/use-alarmmanager-and-service-to-perform-schedule-notification-only-during-specif
leon21a
 
הודעות: 93
הצטרף: ב', 21 פברואר 2011, 10:33
מיקום: באר שבע - תל אביב

מכשיר: Samsung Galaxy S I 9000
גירסא: 4.0

Re: עזרה|טיימר שאחרי דקה יעביר לאקטיביט אחר

הודעהעל ידי acavihai ב ה', 19 ינואר 2012, 15:02

עריכה:
אחי לא הבנתי משמה כלום

יש מצב אני פשוט יקצר את הקוד ופשוט תשנה לי אותו כדי שאני יבין?
acavihai
 
הודעות: 176
הצטרף: ג', 11 ינואר 2011, 22:30

מכשיר: Samsung Galaxy S I 9000
גירסא:

Re: עזרה|טיימר שאחרי דקה יעביר לאקטיביט אחר

הודעהעל ידי koby ב ו', 03 פברואר 2012, 11:30

אתה הולך לכיוון הלא נכון - הנה קוד מוכן :

Intent myIntent = new Intent(.this,
.class);

PendingIntent pendingIntent = PendingIntent.getService(
this, 0, myIntent, 0);

AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);

Calendar calendar = Calendar.getInstance();

calendar.setTimeInMillis(System.currentTimeMillis());

calendar.add(Calendar.SECOND, 60);

alarmManager.set(AlarmManager.RTC_WAKEUP,
calendar.getTimeInMillis(), pendingIntent);

אל תשכח לנתק את ה alarmManager אחרי שאתה יוצא מהאקטיביטי אחרת זה יקפיץ את זה כל הזמן...
koby
 
הודעות: 8
הצטרף: ג', 18 אוקטובר 2011, 18:29

מכשיר: HTC Desire HD
גירסא:

Re: עזרה|טיימר שאחרי דקה יעביר לאקטיביט אחר

הודעהעל ידי Elad1992 ב ו', 03 פברואר 2012, 21:15

למה לא להשתמש בHandler?
יש לו פונקציה שנקראת PostAtTime או משהו כזה, שמריצה Runnable שנותנים להם בתור פרמטר.
פשוט תיצור איזה Runnable שיפעיל את האקטיבי ותעביר אותו להאנדלר. לגבי השם המדויק אני לא סגור אבל פשוט תבדוק את האופציות שיש לך בהנאדלר ואתה כבר תמצא.
תמונה
Elad1992
 
הודעות: 145
הצטרף: ב', 07 פברואר 2011, 03:44

מכשיר: Samsung Captivate
גירסא: 2.3

Re: עזרה|טיימר שאחרי דקה יעביר לאקטיביט אחר

הודעהעל ידי Obg1 ב א', 05 פברואר 2012, 00:56

זאת השורה הבעייתית שלך:

קוד: בחר הכל
public void onFinish()
   {
      Main m1=new Main();
      Intent i=new Intent(null, Main.class);
      m1.startActivity(i);     
   }


ככה לא מתחילים אקטיביטי, אסור לך לייצר Main שהוא יורש מ ACTIVITY.
סמל אישי של המשתמש
Obg1
 
הודעות: 635
הצטרף: ב', 19 יולי 2010, 11:07

מכשיר: Samsung Vibrant
גירסא: 2.2


חזור אל פורום מפתחים