2017-02-19 5 views
0

私のアプリは何かを定期的に行う必要があるので、Android API 21で導入されたジョブスケジューラを試しています。この時点で私はちょうどそれを知り、基礎を試しています。残念ながら私はエラーが発生します:ジョブスケジューラはジョブ/サービスを見つけることができませんか?

Java.lang.illegalArgumentException: No such service ComponentInfo{The whole path here to the service class name TestJobService}

私はこれがマニフェストへの許可を追加することで解決されたが、私は理解していないと私は理解しています。それ以外に何ができるのでしょうか?

これは、私はそれがうまくいかないと思います私のコードの一部です:

Toast.makeText(getApplicationContext(), "Exec reaches here...",Toast.LENGTH_SHORT).show(); 
JobInfo.Builder builder = new JobInfo.Builder(1, new ComponentName(getPackageName(),TestJobService.class.getName())); 
    //runs job service after every 10 seconds 
    builder.setPeriodic(10000); 
    jobScheduler.schedule(builder.build()); 

私は私のマニフェストでこれを持っている:私を混乱させる

<service 
    android:name=".TestJobService" 
    android:permission="android.permission.BIND_JOB_SERVICE" 
    android:exported="true" > 
</service> 

ことの一つは、私は手動で与える傾けることですjob- (私はそれをストレージに許可を得るために行う)デバイス設定でアプリケーションへのアクセス許可を与えます。アプリがschedualing仕事の許可を必要とする場合は、設定で許可を与える必要はありませんか?

私は本当に誰かがこれに対する解決策を持っていることを願っています。

ありがとうございました。

答えて

1

サービス要素をアプリケーション要素内に配置し、他には配置しないでください。私はそれをうまく働いた。

関連する問題