Soru & Cevap

--Service-- ...

18.01.2014 - 02:47

Merhaba arkadaşlar benim 3 tane sorum var.

1-Yazacak oldugum servicenin tablet acıldığında Otomatik olarak başlamasını istiyorum nasıl yapabilirim?

2- Service de: tablet de calışmakta olan uygulamaların listesini nasıl alabilirim?

3- servicede tablette yüklü olan ve calışmamata veya pause olmuş olan başka bir uygulamayı nasıl başlatabilirim?

 

3 Görüntülenme

3 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

Profile picture for user ilker_cimenci
ilker_cimenci
18.01.2014 - 11:08

Cevabın için teşekkürler. bir şey soracağım (Sorum basit bir soru olabilir fakat android de yeniyim)

Aşagıda sizin verdiğiniz kodları uyarlamaya calıştım ama çalışmadı nerde hata yapıyorum?

aşagıda benim sınıfım (Mainactivty sınıfını sildim)

public class andService extends IntentService {

    public andService() {
       super("andService");
    }
 
    @Override
    protected void onHandleIntent(Intent intent) {
 
        Toast.makeText(this, "Bakalım",  Toast.LENGTH_LONG).show();


     
    }
    
    public void onReceive(Context context, Intent intent) {
        
        
        context.startService(new Intent(context, andService.class));


    }
}

-------------manifest dosyam------------

 

<uses-sdk
        android:minSdkVersion="11"
        android:targetSdkVersion="19" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <receiver android:name=".andService" >
                <intent-filter>
                    <action android:name="android.intent.action.BOOT_COMPLETED" />
                </intent-filter>
            </receiver>
        <service
            android:name="com.example.andservices.andService"
            android:exported="false">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            </service>
    </application>

Oğuz
21.01.2014 - 12:27
Toast.makeText(getApplicationContext() öneririm, this'de andService'i görüyor ki buda bir activity degil bu yüzden hata aldığınızı düşünüyorum.
Profile picture for user yigite
yigite
18.01.2014 - 05:54

1- uygulama manifestona yeni bir receiver tanimlayarak boot completed flag i ekle

yani 

[code]

        <receiver android:name=".SinifAdi" >

            <intent-filter>

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

            </intent-filter>

        </receiver>

[/code]

sinifin icinde receive metodunu ovveride et

 

[code]public void onReceive(Context context, Intent intent) {

        context.startService(new Intent(context, calisacakServisim.class));

    }

[/code]

 

2- calisanlar icin fonksiyon body

[code]

ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);

        for (RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {

            if (BataryaServisi.class.getName().equals(service.service.getClassName())) {

                return true;

            }

        }

        return false;

[/code]

 

3-pause durumunu yine 2. sorunda oldugu gibi sorgulayabilir ve intent kullanarak  active edebilirsin

Profile picture for user ilker_cimenci
ilker_cimenci
18.01.2014 - 02:59

Projem android projesi belirtmeyi unutmuşum