所以我試圖使用Android的HTTPS連接,使用客戶端證書進行驗證。我已將此證書導入BKS商店,並插入我的res/raw中。Android - 作爲InputStream的原始資源
一切都好。
但是,當我開始運行時,我得到一個常量NullPointerException。
對於上下文,我有一個Connection類,擴展了Application,並且基本的構造函數應該只是打開一個InputStream作爲一個InputStream並保持就緒。當我來建立連接時,這將被使用。如下(有刪節):
public class RCPHandshake2 extends Application {
InputStream in;
public RCPHandshake2(){
super.onCreate();
in = getResources().openRawResource(R.raw.test);
}
}
的集結到這個運行正常,然而,當我們到那裏(在真實版的第36行),堆棧跟蹤是像這樣:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.<company>.t1v2/com.<company>.t1v2.SplashAndText}: java.lang.NullPointerException
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2496)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2512)
at android.app.ActivityThread.access$2200(ActivityThread.java:119)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1863)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4363)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at android.content.ContextWrapper.getResources(ContextWrapper.java:80)
at com.<company>.<component>.RCPHandshake2.<init>(RCPHandshake2.java:36)
at com.<company>.t1v2.SplashAndText.onCreate(SplashAndText.java:43)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2459)
... 11 more
這似乎出乎意料。有沒有人遇到類似的?
永恆的愛和感謝,以換取任何解決方案/提示/提示/指針從一個更有經驗的人,我呢!
PS - 基本上,即使我知道原始資源在那裏,它出現在R.java中,這似乎認爲它無法訪問它?這是這種情況,還是我失去了一些致盲?
我試過了,我認爲它的工作,但它沒有。所以我創建了一個RCPHandshake2的新實例,然後調用它的getSocketFactory()方法。我甚至嘗試過這樣做.getResources()....但它沒有幫助。你有沒有更多的想法?提前致謝 :-) – 2011-05-04 16:46:47