在Android 3.0版本之後
對網路存取增加了一些限制
不能在onCreate()方法中直接使用外部連結
有兩個方法解決


1.

@Override
public void onCreate(Bundle savedInstanceState) {
    ......
    StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()
    .detectDiskReads()
    .detectDiskWrites()
    .detectNetwork()   // or .detectAll() for all detectable problems
    .penaltyLog()
    .build());
    
    StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder()
    .detectLeakedSqlLiteObjects()
    .penaltyLog()
    .penaltyDeath()
    .build());
    
    ......
    
    // 發送Http請求
}

2.

@Override
public void onCreate(Bundle savedInstanceState) {
    ......
    visitExternalLinks();
    ......
}

private void visitExternalLinks() {
    // 發送Http請求
}

文章標籤
創作者介紹

歡笑的背後是看不見的悲傷

seanstar5317 發表在 痞客邦 PIXNET 留言(1) 人氣()


留言列表 (1)

發表留言
  • ROACH
  • 第二個方法好像不行~~@@我發現我用第二個方法結果都沒反應
    您有試過嗎?

    第一個方法去Google的一下發現只要第一段StrictMode.setThreadPolicy那段就好的
    第二段是除錯測試用的所以會丟出一堆訊息
  • 第二段是在模擬器測試才會用到的沒錯@@

    第二個方法當初試可以耶@@

    seanstar5317 於 2013/05/30 23:26 回覆

找更多相關文章與討論