Tôi đang sử dụng ứng dụng AutoStart
đơn giản với việc triển khai TimerTask
hoạt động tốt ở hầu hết các thiết bị. Vấn đề là nó không hoạt động trong Samsung Galaxy Y(2.3.6)
và DELL XCD35(2.2)
. Khi thiết bị khởi động TimerTask
hoạt động trong vài giây và sau đó tắt. Tôi kiểm tra trong số Application->Manage Application
, tôi thấy rằng Applcation đã ở trạng thái Force Stop
. Điều đó có nghĩa là một số ứng dụng của tôi bị ngừng sau một vài giây. Vì vậy, lý do cho điều này là weird behaviour
trong hai thiết bị này, nếu có ai có giải pháp chia sẻ nó.Ứng dụng AutoStart không hoạt động bình thường
Dưới đây là mã của tôi.
MyReceiver.java
public class MyReceiver extends BroadcastReceiver{
private Timer mTimer = new Timer();
@Override
public void onReceive(Context context, Intent arg1) {
Toast.makeText(context, "Device Booted", Toast.LENGTH_LONG).show();
Log.d("TAG","Device Booted");
mTimer.scheduleAtFixedRate(new MyTimerTask(), 2000,2000);
}
private class MyTimerTask extends TimerTask
{
@Override
public void run() {
Log.d("TAG","TimerTask executed....");
}
}
}
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.autostart.app"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<receiver android:name=".MyReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
</receiver>
</application>
</manifest>
Ah !!! bất kỳ lý do gì về bỏ phiếu xuống? –
Câu hỏi có định dạng hợp lệ, không cần bỏ phiếu xuống ... – WarrenFaith