3

私はOSXとMacプログラミングにまったく慣れていません。継続的に実行するアプリ、または30秒ごとに起動してマイナーなタスクを実行するアプリを作成したいと考えています。Webサービスを介して天気をチェックし、気温が氷点下に下がった場合はメールを送信するなどの処理を行います。Windowsでは、サービスを使用するか、タスクスケジューラに繰り返しタスクを配置します。Mac AppStoreで許可されているOSXでこれを実現する標準的な方法はありますか?ストアに入れられるものを書きたいのですが、Appleはバックグラウンドプロセスの実行に対して漠然とした制限があるようです。

Launchedについて少し学びましたが、使用が許可されているかどうかわかりません。理想的には、誰もログインしていない場合でもプロセスが実行されますが、rootアクセスはおそらく必要ありません。誰かがたまたまログインしている場合、それが電子メールの温度アラートを送信すると、ポップアップがトリガーされます。また、ユーザーがバックグラウンドプロセスの動作を決定する構成ファイルを変更できるGUIもあります。ただし、プロジェクトのその部分にアプリストアの制限はないと思います。

4

2 に答える 2

3

そのように目に見えない形で実行されるアプリは、AppStoreでは許可されないと確信しています。必要なのは、メニューバーのみのアプリケーションを作成することです。これは、アプリの情報にキーを設定することで有効にできますLSUIElement。ユーザーがサインインしない限り実行することはできませんが、ストアに正常に取り込む唯一の方法です。

于 2011-12-22T04:15:26.607 に答える
2

MASガイドラインには、影響を与える可能性のあるいくつかの禁止事項があります。ガイドラインに移動し、セクション2をお読みください。特に2.15、2.23、および2.27を検討してください。ある時点で管理者権限を要求せずに、ログイン前にアプリケーションを実行する方法がわかりません(実行時に権限を使用しなくても)。

私はおそらくそれをログインアイテム([システム環境設定]>[ユーザー]>[ログインアイテム])にします。おそらくLSUIElementアプリとしてsudo rm -rf提案します。間違いなく、それがあなたの最初のアプリであるなら、私はどんな場合でも飛び込みませんlaunchd。これは、私がこれまで扱った中で最も腹立たしいシステムプロセスの1つです。

于 2011-12-22T04:33:41.543 に答える