0
Android用YouTubeアプリケーションの開発にJava YouTubeデータAPI jarを使用できますかAndroid用gdata API
jarを統合しようとしました。 しかし、私は、それは例外
class def not found for YouTubeService
を示している実行すると時々、それはこれは私がテストしたサンプルプログラムです
class def not found for MediaSource
示しています。クエリの後に得られたリストのサイズを出力したい。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
service = new YouTubeService("myService");
urlString = "http://gdata.youtube.com/feeds/api/standardfeeds/top_rated";
try {
videoFeed = service.getFeed(new URL(urlString), VideoFeed.class);
videoEntries = videoFeed.getEntries();
System.out.println("List Size"+videoEntries.size());
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ServiceException e) {
e.printStackTrace();
}
}
これで、次のエラーが表示されます。
09-03 16:27:38.844: WARN/XmlParser(387): javax.xml.parsers.ParserConfigurationException: org.xml.sax.SAXNotRecognizedException: http://xml.org/sax/features/external-parameter-entities
09-03 16:27:38.844: WARN/XmlParser(387): javax.xml.parsers.ParserConfigurationException: org.xml.sax.SAXNotRecognizedException: http://xml.org/sax/features/external-parameter-entities
09-03 16:27:38.844: WARN/XmlParser(387): at org.apache.harmony.xml.parsers.SAXParserFactoryImpl.newSAXParser(SAXParserFactoryImpl.java:84)
09-03 16:27:38.844: WARN/XmlParser(387): at com.google.gdata.util.XmlParser.parse(XmlParser.java:682)
09-03 16:27:38.844: WARN/XmlParser(387): at com.google.gdata.util.XmlParser.parse(XmlParser.java:576)
09-03 16:27:38.844: WARN/XmlParser(387): at com.google.gdata.data.BaseFeed.parseAtom(BaseFeed.java:867)
09-03 16:27:38.844: WARN/XmlParser(387): at com.google.gdata.wireformats.input.AtomDataParser.parse(AtomDataParser.java:68)
09-03 16:27:38.844: WARN/XmlParser(387): at com.google.gdata.wireformats.input.AtomDataParser.parse(AtomDataParser.java:39)
09-03 16:27:38.844: WARN/XmlParser(387): at com.google.gdata.wireformats.input.CharacterParser.parse(CharacterParser.java:100)
09-03 16:27:38.844: WARN/XmlParser(387): at com.google.gdata.wireformats.input.XmlInputParser.parse(XmlInputParser.java:52)
09-03 16:27:38.844: WARN/XmlParser(387): at com.google.gdata.wireformats.input.AtomDualParser.parse(AtomDualParser.java:66)
09-03 16:27:38.844: WARN/XmlParser(387): at com.google.gdata.wireformats.input.AtomDualParser.parse(AtomDualParser.java:34)
09-03 16:27:38.844: WARN/XmlParser(387): at com.google.gdata.client.Service.parseResponseData(Service.java:2165)
09-03 16:27:38.844: WARN/XmlParser(387): at com.google.gdata.client.Service.parseResponseData(Service.java:2098)
09-03 16:27:38.844: WARN/XmlParser(387): at com.google.gdata.client.Service.getFeed(Service.java:1136)
09-03 16:27:38.844: WARN/XmlParser(387): at com.google.gdata.client.Service.getFeed(Service.java:998)
09-03 16:27:38.844: WARN/XmlParser(387): at com.google.gdata.client.GoogleService.getFeed(GoogleService.java:631)
09-03 16:27:38.844: WARN/XmlParser(387): at com.google.gdata.client.Service.getFeed(Service.java:1017)
09-03 16:27:38.844: WARN/XmlParser(387): at com.mcet.youtube.YoutubeActivity.onCreate(YoutubeActivity.java:38)
09-03 16:27:38.844: WARN/XmlParser(387): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
09-03 16:27:38.844: WARN/XmlParser(387): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
09-03 16:27:38.844: WARN/XmlParser(387): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
09-03 16:27:38.844: WARN/XmlParser(387): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
09-03 16:27:38.844: WARN/XmlParser(387): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
09-03 16:27:38.844: WARN/XmlParser(387): at android.os.Handler.dispatchMessage(Handler.java:99)
09-03 16:27:38.844: WARN/XmlParser(387): at android.os.Looper.loop(Looper.java:123)
09-03 16:27:38.844: WARN/XmlParser(387): at android.app.ActivityThread.main(ActivityThread.java:4627)
09-03 16:27:38.844: WARN/XmlParser(387): at java.lang.reflect.Method.invokeNative(Native Method)
09-03 16:27:38.844: WARN/XmlParser(387): at java.lang.reflect.Method.invoke(Method.java:521)
09-03 16:27:38.844: WARN/XmlParser(387): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
09-03 16:27:38.844: WARN/XmlParser(387): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
09-03 16:27:38.844: WARN/XmlParser(387): at dalvik.system.NativeStart.main(Native Method)
09-03 16:27:38.997: WARN/System.err(387): com.google.gdata.util.ParseException: org.xml.sax.SAXNotRecognizedException: http://xml.org/sax/features/external-parameter-entities
09-03 16:27:39.005: WARN/System.err(387): at com.google.gdata.util.XmlParser.parse(XmlParser.java:708)
09-03 16:27:39.005: WARN/System.err(387): at com.google.gdata.util.XmlParser.parse(XmlParser.java:576)
09-03 16:27:39.005: WARN/System.err(387): at com.google.gdata.data.BaseFeed.parseAtom(BaseFeed.java:867)
09-03 16:27:39.005: WARN/System.err(387): at com.google.gdata.wireformats.input.AtomDataParser.parse(AtomDataParser.java:68)
09-03 16:27:39.014: WARN/System.err(387): at com.google.gdata.wireformats.input.AtomDataParser.parse(AtomDataParser.java:39)
09-03 16:27:39.014: WARN/System.err(387): at com.google.gdata.wireformats.input.CharacterParser.parse(CharacterParser.java:100)
09-03 16:27:39.014: WARN/System.err(387): at com.google.gdata.wireformats.input.XmlInputParser.parse(XmlInputParser.java:52)
09-03 16:27:39.025: WARN/System.err(387): at com.google.gdata.wireformats.input.AtomDualParser.parse(AtomDualParser.java:66)
09-03 16:27:39.025: WARN/System.err(387): at com.google.gdata.wireformats.input.AtomDualParser.parse(AtomDualParser.java:34)
09-03 16:27:39.025: WARN/System.err(387): at com.google.gdata.client.Service.parseResponseData(Service.java:2165)
09-03 16:27:39.035: WARN/System.err(387): at com.google.gdata.client.Service.parseResponseData(Service.java:2098)
09-03 16:27:39.035: WARN/System.err(387): at com.google.gdata.client.Service.getFeed(Service.java:1136)
09-03 16:27:39.035: WARN/System.err(387): at com.google.gdata.client.Service.getFeed(Service.java:998)
09-03 16:27:39.044: WARN/System.err(387): at com.google.gdata.client.GoogleService.getFeed(GoogleService.java:631)
09-03 16:27:39.044: WARN/System.err(387): at com.google.gdata.client.Service.getFeed(Service.java:1017)
09-03 16:27:39.044: WARN/System.err(387): at com.mcet.youtube.YoutubeActivity.onCreate(YoutubeActivity.java:38)
09-03 16:27:39.054: WARN/System.err(387): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
09-03 16:27:39.054: WARN/System.err(387): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
09-03 16:27:39.054: WARN/System.err(387): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
09-03 16:27:39.064: WARN/System.err(387): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
09-03 16:27:39.064: WARN/System.err(387): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
09-03 16:27:39.064: WARN/System.err(387): at android.os.Handler.dispatchMessage(Handler.java:99)
09-03 16:27:39.074: WARN/System.err(387): at android.os.Looper.loop(Looper.java:123)
09-03 16:27:39.074: WARN/System.err(387): at android.app.ActivityThread.main(ActivityThread.java:4627)
09-03 16:27:39.074: WARN/System.err(387): at java.lang.reflect.Method.invokeNative(Native Method)
09-03 16:27:39.084: WARN/System.err(387): at java.lang.reflect.Method.invoke(Method.java:521)
09-03 16:27:39.084: WARN/System.err(387): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
09-03 16:27:39.084: WARN/System.err(387): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
09-03 16:27:39.084: WARN/System.err(387): at dalvik.system.NativeStart.main(Native Method)
09-03 16:27:39.095: WARN/System.err(387): Caused by: javax.xml.parsers.ParserConfigurationException: org.xml.sax.SAXNotRecognizedException: http://xml.org/sax/features/external-parameter-entities
09-03 16:27:39.095: WARN/System.err(387): at org.apache.harmony.xml.parsers.SAXParserFactoryImpl.newSAXParser(SAXParserFactoryImpl.java:84)
09-03 16:27:39.095: WARN/System.err(387): at com.google.gdata.util.XmlParser.parse(XmlParser.java:682)
09-03 16:27:39.095: WARN/System.err(387): ... 28 more
jarを追加した後、Class def not foundがなくなりました。今は結果を得ることができません。ログにはコードが添付されています。 – Abi
あなたのために働いた@Abi Glad。あなたが使用しているライブラリはAndroidで完全にサポートされていないため、例外はあります。代わりに[このバージョン](http://code.google.com/p/google-api-java-client/)を見ることができます。これはAndroidと互換性があります(自分で試したことはありませんが、他の人はそれをうまく使いました)。 –