1

ホストをUbuntu12にアップグレードし、Androidを正常に再構築した後、デバイスにインストールすると、システムブートが次のエラーにループします。

I/Zygote  (  147): Preloading classes...
D/dalvikvm(  147): GC_EXPLICIT freed 47K, 78% free 232K/1024K, external 0K/0K, paused 3ms
D/dalvikvm(  147): GC_EXPLICIT freed 1K, 73% free 282K/1024K, external 0K/0K, paused 3ms
D/dalvikvm(  147): GC_EXPLICIT freed 20K, 70% free 315K/1024K, external 0K/0K, paused 3ms
D/dalvikvm(  147): GC_EXPLICIT freed 17K, 66% free 353K/1024K, external 0K/0K, paused 3ms
D/dalvikvm(  147): GC_EXPLICIT freed 26K, 63% free 381K/1024K, external 0K/0K, paused 4ms
D/dalvikvm(  147): GC_EXPLICIT freed 22K, 58% free 440K/1024K, external 0K/0K, paused 4ms
W/MediaProfiles(  147): could not find media config xml file
D/dalvikvm(  147): GC_EXPLICIT freed 99K, 47% free 545K/1024K, external 0K/0K, paused 5ms
W/dalvikvm(  147): Exception Ljava/lang/
NullPointerException; thrown while initializing Landroid/net/http/HttpsConnection;
E/Zygote  (  147): Error preloading android.net.http.HttpsConnection.
E/Zygote  (  147): java.lang.ExceptionInInitializerError
E/Zygote  (  147):     at java.lang.Class.classForName(Native Method)
E/Zygote  (  147):     at java.lang.Class.forName(Class.java:234)
E/Zygote  (  147):     at java.lang.Class.forName(Class.java:181)
E/Zygote  (  147):     at com.android.internal.os.ZygoteInit.preloadClasses(ZygoteInit.java:297)
E/Zygote  (  147):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:564)
E/Zygote  (  147):     at dalvik.system.NativeStart.main(Native Method)
E/Zygote  (  147): Caused by: java.lang.NullPointerException: algorithm is null
E/Zygote  (  147):     at javax.net.ssl.KeyManagerFactory.getInstance(KeyManagerFactory.java:77)
E/Zygote  (  147):     at org.apache.harmony.xnet.provider.jsse.SSLParametersImpl.createDefaultKeyManager(SSLParametersImpl.java:387)
E/Zygote  (  147):     at org.apache.harmony.xnet.provider.jsse.SSLParametersImpl.getDefaultKeyManager(SSLParametersImpl.java:380)
E/Zygote  (  147):     at org.apache.harmony.xnet.provider.jsse.SSLParametersImpl.<init>(SSLParametersImpl.java:120)
E/Zygote  (  147):     at org.apache.harmony.xnet.provider.jsse.SSLContextImpl.engineInit(SSLContextImpl.java:97)
E/Zygote  (  147):     at android.net.http.HttpsConnection.initializeEngine(HttpsConnection.java:101)
E/Zygote  (  147):     at android.net.http.HttpsConnection.<clinit>(HttpsConnection.java:65)
E/Zygote  (  147):     ... 6 more
E/Zygote  (  147): setreuid() failed. errno: 17
D/AndroidRuntime(  147): Shutting down VM

Ubuntu 11.10(64ビット)ホストにビルドした場合、同じソースが正常に機能しました。私は次のように移行を行いました:

1)11.10ホストからのaospソースディレクトリの完全バックアップ

2)新しいUbuntu12.04ホストのセットアップ

3)AOSP前提条件パッケージのインストール

4)Oraclejdk6のインストール

5)aospソースディレクトリの復元(1から)

「javax.net.ssl.KeyManagerFactory」の失敗は、SSL関連の問題を示唆していますが、何が欠けているのでしょうか...

PS-デバイスと移植プロジェクトに関する追加情報については、それについてのディスカッションを主催するグループがあります。

4

1 に答える 1

1

いくつかの異なる試行の後、私はこの問題を解決することができたようです。

それはすべて、AOSPビルドを作成するために使用されるJavaDevelopmentKitに依存します。最初にOracleJDKをインストールしました(Androidチュートリアルページhttp://source.android.com/source/initializing.htmlで提案されています)が、次にOpen-JDKを試しました。

sudo apt-get install openjdk-6-jdk

Open-JDKとOracle-JDKの両方がインストールされている場合は、どちらを使用して実行するかを選択できます。

sudo update-alternatives --config java sudo update-alternatives --config javac sudo update-alternatives --config jar sudo update-alternatives --config javah sudo update-alternatives --config javadoc

そして、これらのそれぞれにOpen-JDKバージョンを選択します。

Oracle JDKを使用したAOSPビルドは起動に失敗しましたが、Open-JDKを使用したビルドは正常に起動を完了しました。

うまくいけば、それは他の人が同様の問題を解決するのに役立つでしょう。

于 2012-06-15T15:59:32.913 に答える