2012-11-26 16 views
9

次のコマンドを実行して、apk展開用の暗号化されたobbファイルを取得しています。Androidでjobbツールを使用する

jobb -d /home/manoj/Desktop/Test -o main.1.com.example.helloworld.obb -k "manoj" -pn com.example.helloworld -pv 1 

以下の例外を除いています。何が間違っているのか教えてください。

Slop: 0 Directory Overhead: 0 
Slop: 1132 Directory Overhead: 768 
Partial Sector [32] writing to sector: 15 
Partial Sector [32] writing to sector: 15 
Partial Sector [32] writing to sector: 15 
Partial Sector [331] writing to sector: 223 
Partial Sector [417] writing to sector: 400 
Partial Sector [406] writing to sector: 577 
Partial Sector [333] writing to sector: 754 
Partial Sector [223] writing to sector: 931 
java.io.IOException: FAT Full (1676, 1677) 
at de.waldheinz.fs.fat.Fat.allocNew(Fat.java:298) 
at de.waldheinz.fs.fat.Fat.allocAppend(Fat.java:376) 
at de.waldheinz.fs.fat.Fat.allocNew(Fat.java:353) 
at de.waldheinz.fs.fat.ClusterChain.setChainLength(ClusterChain.java:164) 
at de.waldheinz.fs.fat.ClusterChain.setSize(ClusterChain.java:132) 
at de.waldheinz.fs.fat.FatFile.setLength(FatFile.java:91) 
at de.waldheinz.fs.fat.FatFile.write(FatFile.java:154) 
at com.android.jobb.Main$1.processFile(Main.java:495) 
at com.android.jobb.Main.processAllFiles(Main.java:604) 
at com.android.jobb.Main.processAllFiles(Main.java:600) 
at com.android.jobb.Main.main(Main.java:417) 
Exception in thread "main" java.lang.RuntimeException: Error getting/writing file with   name: main.1.com.example.helloworld.obb 
at com.android.jobb.Main$1.processFile(Main.java:501) 
at com.android.jobb.Main.processAllFiles(Main.java:604) 
at com.android.jobb.Main.processAllFiles(Main.java:600) 
at com.android.jobb.Main.main(Main.java:417) 
+1

私はあなたと同じ問題を抱えています...それを解決する方法をまだ考えています。解決策を見つけたら、教えてください。 –

+2

[Androidの問題#53878](https://code.google.com/p/android/issues/detail?id=53878)をご覧ください。 –

答えて

0

私の場合は、私がパックしたいディレクトリに同じパラメータと同じ内容でプログラムを再実行して解決しました。

./jobb -d /media/assets/ -o my-app-assets.obb -k my_pass -pn package-name -pv your-version 
4

多数のファイルが多数ある場合は、jobb-Tool(少なくともjobb.batのウィンドウ)で次のエラーが発生することもあります。

de.waldheinz.fs.fat.Directory Full Exception: directory is full 

OBBファイル形式は、FAT16、whitch Windowsでのみルートディレクトリ

で512のエントリ/ファイルができますに保存されているので、これは、次のとおりです。 フォルダ「データ」whithを持っている場合.JPG

  • データを/ 1.JPG/

    • データを画像の失われた、とAndroid SDK-toolsディレクトリにコピー3210
    • データ/ 3.JPG
    • データ/ ...
    • データ/ 5000.jpg

    、あなたが言及したエラーを取得します

    console>>>jobb -pn my.package.name -pv VERSIONCODE -d ./data -k obb_password 
    -o main.VERSIONCODE.my.package.name.obb 
    

    を使用しています。 サブフォルダ

    • ルート/ 1.JPGデータ/
    • ルート/データ/ 2.JPG
    • ルート/データ/ 3に-directory "データを" 1ディレクトリ階層を追加して作ってみます.JPG
    • ルート/データ/ ...
    • ルート/データ/ 5000.jpg

    使用

    console>>>jobb -pn my.package.name -pv VERSIONCODE -d ./root -k obb_password 
    -o main.VERSIONCODE.my.package.name.obb 
    

    あなたがobbから後で読みたい場合は、ピクチャは現在サブフォルダにあることに注意する必要があります。

  • +0

    あなたは私の日を救った。ありがとうございました – anhnt

    1

    私は同じ動作をしていましたが、これは私が実験していたテストディレクトリ構造にのみありました。それはほとんど内容がなかったので、おそらくこれはこれらの小さなサイズでjobbの問題です。あるいは、すべてのファイルが占めるスペースに応じていくつかのエラー条件が満たされるかもしれません。私はcommentedをGoogleコード問題で詳しく説明しました。

    いくつかの冗長ファイルを追加すると、それが些細なディレクトリ構造で発生している場合のこのエラー動作を回避できるのではないかと思います。

    0

    同じ問題がありましたが、私が見つけた回避策は最小サイズ4moのアーカイブを作成することです。

    ...私の小さなアーカイブに偽のデータを追加し、それが働いたようにするには問題: https://code.google.com/p/android/issues/detail?can=2&start=0&num=100&q=&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars&groupby=&sort=&id=53878

    +0

    さらに明確にするために、最大2GBのファイルサイズのOBBが有効である必要があります。根本的な問題を回避するには、少なくとも4 MBに埋め込むことをお勧めします。とにかく "mo"って何? :P –

    1

    Ix222は、FAT16は、ルートディレクトリ内のファイル数の制限について言ったことに加えて、問題がJOBBツール自体にもあります、そしてそれが使用するFATライブラリ。

    FATライブラリでは、FAT12の最大ファイルシステムサイズを4 MB、FAT16を512 MB、FAT32をそれ以上使用することを決定しています。実際には、FAT12では最大16 MB(いくつかの実装では32 MB)が可能で、FAT16では最大2 GBまで可能です。 このは、現在のツールを使用するOBBサイズが4 MB < = OBBサイズ< 512 MBの範囲に制限されている場合に発生する理由です。

    jobbツールもFATライブラリに頼ってファイルシステムを判断していますが、のみFAT16と互換性があります。

    すぐに解決できるのは、自分のバージョンのjobbツールをビルドすることです(既存のJARをバックアップし、独自のものに置き換えることをお勧めします.Windows Batchファイルを使用して実行する必要があります)。 libfat32ライブラリが組み込まれています。そうでなければ2GBまでのFAT16を返すようにファイルシステムを決定する方法を変更するだけで、有効なOBBファイルを2GBまで構築できます(これはOBBファイルの制限です)。私の場合は

    SuperFloppyFormatter returning FAT32 for anything over 512 MB?

    https://code.google.com/p/android/issues/detail?id=60294

    0

    、私はWindows上で、私の上司が所有し、MacOSXの上で動作します...私を

    をいくつかの隠しファイルを削除し、問題を解決しました。だから、彼がそれを渡した後、フォルダを開いた後、私はいくつかの隠しファイルを見つけた.DS_Storeや._ DS_Storeなど。さらに、私は隠された一時的なJPGを見つけました。たとえば、image1.jpgというファイルがある場合は、もう1つ.image1.jpgがあります。だから、私はすべての隠しファイルを削除しました。

    そしてvoilà!

    関連する問題