1

私は非常に奇妙な問題に陥っています。私は自分用にアプリを開発しました。これには次の3つのファイルがあります

  • MyApp.app
  • MyAppDaemon.app
  • LaunchDaemon.plist

ssh を使用して各ファイルを特定のフォルダーにコピーすると、アプリは完璧に動作します。

  • MyApp.app を /Applications に
  • MyAppDaemon.app を /private/var/mobile/ に
  • /System/Library/LaunchDaemons/ への LaunchDaemon.plist

Cyber​​duck を使用して ssh し、各ファイルを上記の指定したフォルダーに配置すると、アプリはうまく機能します。

問題は、ファイルを .deb ファイルにパックして iPhone に転送し、ターミナルを使用してインストールしようとすると [dpkg -i MyApp.deb] ファイルが以前に指定したフォルダーに正常にコピーされるが、アプリがコピーされないことです。仕事。すべての権限を確認しましたが、まだ機能していません。

ちょっと奇妙です。すべてがsshを使用するのと同じ方法で行われますが、.debファイルの場合は機能しませんが、ファイルを個別にコピーするとうまく機能します

これに関するアドバイスはありますか??

4

5 に答える 5

2

返信してくれてありがとう、問題の解決策を見つけましたが、問題が発生した理由はまだわかりません。これが私がしたことです

AppDaemon を xcode の MyApp リソース フォルダーにパックし、DEBIAN の postinst ファイルでそのフォルダーを /private/var/mobile に移動していたため、実際に問題が発生していました。フォルダーは /private/var/mobile にコピーされていましたが、すべての権限と所有権が付与されていない可能性があります。だから私がしたことは、.debファイルにパックする前に、xcodeのMyAppのリソースフォルダーからAppDaemonを削除し、スタンドアロンアプリにしました。次に、.deb にパッキングするためのこのファイル アーキテクチャを作成しました。

+- MyApp
   +- Applications
      +Myapp.app
   +-DEBIAN
    -control
    -postinst
    -postrm
   +-System
     +-Library
       +-LaunchDaemons
         +- com.myLaunchDaemon.plist
   +-private
     +-var
       +-mobile
         +- AppDaemon.app

次に、このsaurikが彼のサイトで指示したような.debコマンドでフォルダーをパックしました。

すべてがうまくいき、問題は解決しました。しかし、なぜ問題が発生したのかまだわかりませんか?

于 2010-02-10T03:19:08.203 に答える
1

たぶん、.deb インストールが別の所有者でファイルを押し出していますか?

于 2010-02-09T14:23:02.033 に答える
1

問題は、.deb 作成プロセスにある可能性が最も高いです。saurik のサイトの指示に従いましたか、それとも別の方法でしたか? http://www.saurik.com/id/7

于 2010-02-09T22:35:15.273 に答える
0

私はdebを作成した経験はあまりありませんが、jessecurryのように、端末からアプリを実行して何が得られるかを確認できる場合、パーミッションが問題になる可能性があると思います.

于 2010-02-09T22:47:36.757 に答える
0

勝手な推測ですが (ジェイルブレイクされた開発は扱っていません)、おそらく .deb ファイルとしてパックするときにシンボリック リンクが逆参照されているのでしょうか?

署名された iPhone アプリには、バンドル内の CodeSignature フォルダーにシンボリック リンクがあります。注意せずにバンドルを zip および unzip すると (たとえば、 に-yオプションを指定するzipなど)、シンボリック リンクがファイルのコピーに置き換えられ、署名が壊れます。これにより、不可解なアプリの破損が発生します。

コード署名を行っていない場合でも、deb ファイルを解凍し、出力を元のアプリ バンドルと比較して、違いがあるかどうかを確認してください。

于 2010-02-09T22:48:34.497 に答える