2012-01-30 5 views
2

アンドロイドアプリで現在のGSONライブラリを使用していますが、アプリケーションがキーストアで署名せずにビルドされていると、すべて正常に動作します。GSONライブラリを使用してAndroidプロジェクトをエクスポート/署名する

アプリをエクスポートして署名すると、gsonはReaderを自分のクラスに解析できません。

私はproguardを使わずにアプリに署名しようとしましたが、これは違いはありませんでした。私は文字通り、なぜそれが署名されたときに異なった振る舞いをしているのかについて失われています。問題の

行はこれです:

Words words = new Words(); 
words = gson.fromJson(r, Words.class); 

アプリが署名されたときに、オブジェクトが単純に空です。

+0

エラーとは具体的になりますが、例外は何ですか? – joecks

+0

例外やエラーは発生しませんが、やっぱり難読化されています。 – user1178196

答えて

3

私はproguardの難読化があなたのモデルを破壊する責任があると思っていましたが、私はzipalignがあなたのjsonを解析できるように、あなたのモデルに特定のgson注釈を提供できるように、

+0

もう一度proGuardを削除しようとしましたが、現在は動作しています。私は初めて何かを逃したに違いない。 今すぐproGuardを有効にして動作させる方法を理解する必要があります。 私は答えがここにあることを望んでいます: http://code.google.com/p/google-gson/source/browse/trunk/examples/android-proguard-example/proguard.cfg?r=1077 – user1178196

+0

うん、それは合理的だと思うが、私は自分のアプリで動作させるために、自分自身でプロガードと苦労した。最後に、アノテーションを使用してモデルへの直接参照を削除する必要がありました。 – joecks

+1

Btw、私はジャクソンがはるかに優れた(より速い)オブジェクトマッパーだと感じました! – joecks

関連する問題