최근에 내 위젯에서 다음 오류가 다시 발생하기 시작했습니다. 나는 어떤 변화도하지 않았고 나는 그 문제가 무엇이 될 수 있고 어떻게이 문제를 해결할 수 있을지 궁금해하고있다. 내 위젯은 제 3 자 클라이언트의 정보에 액세스하기 위해 만든 서비스의 정보를 기반으로 업데이트됩니다. 며칠 전까지 데이터를 정상적으로 복원 할 수있었습니다. 이제 아래 오류가 나타납니다.알 수없는 호스트 예외
방금 액티비티 (즉, 위젯이 아닌)에서 코드를 실행하려했으나 정상적으로 작동합니다. 왜 위젯이 아닌 액티비티에서 작동하는지 잘 모르겠습니다. 또한 별도의 Intent에서 제 3 자 웹 사이트에 대한 액세스를 실행하고 있습니다.
나는 이클립스를 다시 시작하고 이클립스를 시도하고 장치를 재부팅했다. 내 매니페스트 파일에 인터넷에 액세스 할 수있는 적절한 권한이 있습니다. 이 문제는 처음에 네트워크 문제로 보였지만 에뮬레이터와 장치의 웹 브라우저에서 URL에 액세스 할 수 있음을 확인했습니다. 이 코드는 며칠 전에 작업 중이었습니다. 게시물을 내 매니페스트 파일로 업데이트했습니다. parseMyInfo를 호출하기 직전에 코드가 실패합니다. OAuth 소비자/공급자 호출 중에 예외가 발생합니다. 코드 에게 실패 년대 코드를 실패
오류
oauth.signpost.AbstractOAuthProvider.retrieveToken(AbstractOAuthProvider.java:214)
08-24 22:36:02.063: ERROR/ARCHOS(541): at oauth.signpost.AbstractOAuthProvider.retrieveRequestToken(AbstractOAuthProvider.java:69)
08-24 22:36:02.063: ERROR/ARCHOS(541): at com.test.community.SG_Service$TED.populate(SG_Service.java:276)
08-24 22:36:02.063: ERROR/ARCHOS(541): at com.test.community.SG_Service$SGHandler.getTEDData(SG_Service.java:813)
08-24 22:36:02.063: ERROR/ARCHOS(541): at com.test.community.SG_Service$SGService_BG.onHandleIntent(SG_Service.java:844)
08-24 22:36:02.063: ERROR/ARCHOS(541): at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:59)
08-24 22:36:02.063: ERROR/ARCHOS(541): at android.os.Handler.dispatchMessage(Handler.java:99)
08-24 22:36:02.063: ERROR/ARCHOS(541): at android.os.Looper.loop(Looper.java:123)
08-24 22:36:02.063: ERROR/ARCHOS(541): at android.os.HandlerThread.run(HandlerThread.java:60)
08-24 22:36:02.063: ERROR/ARCHOS(541): Caused by: java.net.UnknownHostException: communitymonitorstudy.stepgreen.org
08-24 22:36:02.063: ERROR/ARCHOS(541): at java.net.InetAddress.lookupHostByName(InetAddress.java:513)
08-24 22:36:02.063: ERROR/ARCHOS(541): at java.net.InetAddress.getAllByNameImpl(InetAddress.java:278)
08-24 22:36:02.063: ERROR/ARCHOS(541): at java.net.InetAddress.getAllByName(InetAddress.java:242)
08-24 22:36:02.063: ERROR/ARCHOS(541): at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:136)
08-24 22:36:02.063: ERROR/ARCHOS(541): at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
08-24 22:36:02.063: ERROR/ARCHOS(541): at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
08-24 22:36:02.063: ERROR/ARCHOS(541): at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:348)
08-24 22:36:02.063: ERROR/ARCHOS(541): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
08-24 22:36:02.063: ERROR/ARCHOS(541): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
08-24 22:36:02.063: ERROR/ARCHOS(541): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
08-24 22:36:02.063: ERROR/ARCHOS(541): at oauth.signpost.commonshttp.CommonsHttpOAuthProvider.sendRequest(CommonsHttpOAuthProvider.java:64)
08-24 22:36:02.063: ERROR/ARCHOS(541): at oauth.signpost.AbstractOAuthProvider.retrieveToken(AbstractOAuthProvider.java:177)
은 다음과 같습니다 :
HttpClient client = new DefaultHttpClient();
consumer = new CommonsHttpOAuthConsumer(Constants.CONSUMER_KEY,
Constants.CONSUMER_SECRET);
provider = new CommonsHttpOAuthProvider(Constants.REQUEST_TOKEN_URL,
Constants.ACCESS_TOKEN_URL, Constants.AUTHORIZE_URL, client);
provider.retrieveRequestToken(consumer, OAuth.OUT_OF_BAND);
provider.retrieveAccessToken(consumer, null);
MyInfo info = parseMyInfo(userName, consumer, client);
매니페스트 파일
<application android:icon="@drawable/icon" android:debuggable="true"
android:label="@string/app_name" android:name="AppStatus">
<activity android:name=".CommunityMonitorActivity"android:label="@string/app_name">
<intent-filter>
<action android:name="com.cmu.community.CommunityWidget.ACTION_WIDGET_CONFIGURE"/>
</intent-filter>
</activity>
<activity android:name=".MyInfoActivity"
android:theme="@style/Theme.D1"
android:label="@string/my_info"
/>
<activity android:name=".HomeActivity"
android:theme="@style/Theme.D1"
android:label="@string/home"
/>
<activity android:name=".AboutActivity"
android:theme="@style/Theme.D1"
android:label="@string/about"
/>
<receiver android:name=".CommunityWidget" android:label="@string/app_name">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
<action android:name="com.cmu.community.CommunityWidget.ACTION_WIDGET_RECEIVER"/>
</intent-filter>
<meta-data android:name="android.appwidget.provider"
android:resource="@xml/communitywidgetprovider" />
</receiver>
<receiver android:name="com.cmu.community.Stepgreen_Service$StepgreenReceiver">
<intent-filter>
<action android:name="com.cmu.community.ACTION_STEPGREENMANAGER"></action>
</intent-filter>
</receiver>
<receiver android:name="com.cmu.community.AppStatus_Service$AppStatusReceiver">
<intent-filter>
<action android:name="com.cmu.community.ACTION_APPSTATUSMANAGER"></action>
</intent-filter>
</receiver>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-
permission>
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<service android:name="Stepgreen_Service$StepgreenService_BG"></service>
</application>
</manifest>
'UnknowHostException'은 일반적으로 DNS 시스템이 호스트 이름을 확인할 수 없음을 의미합니다. – asgs
왜 이것이 다운 voted인지 확실하지 않습니다. 나는 너를 다시지지했다. 아마도 Elite Gentleman의 편집 전의 모습 때문일 것입니다. :) 그리고 asgs가 정확합니다. 인터넷 사용 권한을 사용하도록 설정했는지 다시 한 번 확인합니다. 그러면 첫 번째 단계가됩니다. – Codeman
manifest.xml에서 사용 권한이 올바른지 절대적으로 확신합니까? 원래 게시물에 추가 할 수 있습니까? – elevine