我在使用此代码显示空白屏幕的设备中遇到问题,但它在模拟器中运行良好。能帮我解决一下这个问题....
package test;
import java.io.DataInputStream;
import javax.microedition.io.Connector;
import javax.microedition.io.StreamConnection;
import net.rim.device.api.system.Display;
import net.rim.device.api.ui.Graphics;
import net.rim.device.api.ui.UiApplication;
import net.rim.device.api.ui.component.Dialog;
import net.rim.device.api.ui.component.LabelField;
import net.rim.device.api.ui.container.MainScreen;
import net.rim.device.api.ui.container.VerticalFieldManager;
public class HomeScreen extends UiApplication{
public static void main(String args[]){
new HomeScreen().enterEventDispatcher();
}
public HomeScreen(){
super();
pushScreen(new MyScreen());
}
}
class MyScreen extends MainScreen{
private VerticalFieldManager vfm;
public MyScreen(){
super();
vfm = new VerticalFieldManager(VerticalFieldManager.VERTICAL_SCROLL){
protected void paintBackground(Graphics graphics)
{
graphics.setBackgroundColor(0xBACd22);
graphics.clear();
}
protected void sublayout(int width, int height) {
super.sublayout(width, height);
setExtent(Display.getWidth(),Display.getHeight());
}
};
add(vfm);
Thread t = new Thread(new Runnable(){
public void run(){
CallService();
}
});t.start();
}
private void CallService(){
final StreamConnection streamConn;
try {
streamConn = (StreamConnection)Connector.open("http://www.bankofcanada.ca/rss/fx/noon/fx-noon-all.xml");
LabelField applicationTitle = new LabelField("XML Parser");
setTitle(applicationTitle);
final DataInputStream _inputStream = new DataInputStream(streamConn.openInputStream());
UiApplication.getUiApplication().invokeLater(new Runnable(){
public void run(){
Dialog.alert("Test" +_inputStream );
}
});
} catch (Exception e) {
e.printStackTrace();
}
}
}
以上代码无法在设备中运行?提前谢谢..
答案 0 :(得分:1)
您需要根据您使用的连接类型(WiFi / BES / BIS / WAP2 / TCP)附加URL参数。
For example if you are using BES connection:
streamConn = (StreamConnection)Connector.open("http://www.bankofcanada.ca/rss/fx/noon/fx-noon-all.xml;deviceside=false");
and if your are using WiFi:
streamConn = (StreamConnection)Connector.open("http://www.bankofcanada.ca/rss/fx/noon/fx-noon-all.xml;deviceside=true;interface=wifi");
and For WAP2/TCP:
streamConn = (StreamConnection)Connector.open("http://www.bankofcanada.ca/rss/fx/noon/fx-noon-all.xml;deviceside=true");
了解更多信息: