- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是android编程的新手,并且我编写了这段代码,该代码解析可查看的屏幕以获取左上角和右下角坐标,然后将值传递给网络服务,
http://hiscentral.cuahsi.org/webservices/hiscentral.asmx?op=GetSeriesCatalogForBox2
public class AndroidTestActivity extends MapActivity
{
/** Called when the activity is first created. */
ArrayList<String> arrlat_long = new ArrayList<String>();
ArrayList<String> arrlat_lat = new ArrayList<String>();
ArrayList<Double> pass= new ArrayList<Double>();
ArrayList<Double> d = new ArrayList<Double>();
private static final String ACTION_RECV_MSG = "com.imrankhanandroid.intent.action.RECEIVE_MESSAGE";
private static final String ACTION_OTHER_MSG = "com.imrankhanandroid.intent.action.OTHER_MESSAGE";
MapView mapView;
private MessageReceiver receiver ;
private MapController mapController;
double topLat;
double topLon;
double bottomLat;
double bottomLon;
double degree;
double minutes;
double seconds;
String strtest,strtest1,strtest2,strtest3;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mapView = (MapView) findViewById(R.id.mapview);
mapView.setBuiltInZoomControls(true);
mapController = mapView.getController();
mapController.setZoom(8);
Projection proj = mapView.getProjection();
GeoPoint topLeft = proj.fromPixels(0, 0);
GeoPoint bottomRight = proj.fromPixels(mapView.getWidth()-1, mapView.getHeight()-1);
topLat = topLeft.getLatitudeE6()/1E6;
topLon = topLeft.getLongitudeE6()/1E6;
bottomLat = bottomRight.getLatitudeE6()/1E6;
bottomLon = bottomRight.getLongitudeE6()/1E6;
/*int n= ((int) (topLat*1E6));
int n1= ((int) (topLon*1E6));
int n2= ((int) (bottomLat*1E6));
int n3= ((int) (bottomLon*1E6));*/
d.add(topLat);
d.add(topLon);
d.add(bottomLat);
d.add(bottomLon);
for (int i=0; i<4 ; i++)
{
double value = d.get(i);
if (value <0)
{
value=value*-1;
int y = (int) value;
double rest= value - y;
String min_sec = Double.toString(rest);
String min = min_sec.substring(2,4); /* minutes */
String sec = min_sec.substring(4,6); /* seconds */
minutes = (Double.valueOf(min)) / 60; /* minutes DD */
seconds = Double.valueOf(sec) / 3600;
double value1= y + minutes + seconds;
value1=value1*-1;
pass.add(value1);
}
else
{
int y1 = (int) value;
double rest1= value - y1;
String min_sec1 = Double.toString(rest1);
String min1 = min_sec1.substring(2,4); /* minutes */
String sec1 = min_sec1.substring(4,6); /* seconds */
minutes = (Double.valueOf(min1)) / 60; /* minutes DD */
seconds = Double.valueOf(sec1) / 3600;
double value1= y1 + minutes + seconds;
pass.add(value1);
}
}
double a= pass.get(0);
double b= pass.get(1);
double c= pass.get(2);
double d= pass.get(3);
strtest=Double.toString(a)+"/"+Double.toString(b)+"/"+Double.toString(c)+"/"+Double.toString(d);
Log.d("strtest strtest", "strtest strtest = "+strtest);
Intent msgIntent = new Intent(AndroidTestActivity.this,Intentservice.class);
msgIntent.putExtra("strtest", strtest); //arrlat_long
startService(msgIntent);
//Dynamic registration Receiver
IntentFilter filter = new IntentFilter(ACTION_RECV_MSG);
filter.addCategory(Intent.CATEGORY_DEFAULT);
receiver = new MessageReceiver();
registerReceiver(receiver, filter);
IntentFilter filter2 = new IntentFilter(ACTION_OTHER_MSG);
filter2.addCategory(Intent.CATEGORY_DEFAULT);
receiver = new MessageReceiver();
registerReceiver(receiver, filter2);
}
//Broadcast to receive
public class MessageReceiver extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
arrlat_long = intent.getStringArrayListExtra("codnt");
arrlat_lat = intent.getStringArrayListExtra("codntlat");
// text.setText(message);
Toast.makeText(context, arrlat_long.get(0),Toast.LENGTH_SHORT).show();
testoverlay();
}
}
public void testoverlay()
{
for(int i=0;i<arrlat_long.size();i++)
{
List<Overlay> mapOverlays = mapView.getOverlays();
Drawable drawable = this.getResources().getDrawable(R.drawable.mapmarker);
HelloItemizedOverlay itemizedoverlay = new HelloItemizedOverlay(drawable,this);
float lat = Float.parseFloat(arrlat_lat.get(i));
float lng = Float.parseFloat(arrlat_long.get(i));
GeoPoint point = new GeoPoint((int)(lat * 1E6), (int)(lng * 1E6));
OverlayItem overlayitem = new OverlayItem(point, "", "");
itemizedoverlay.addOverlay(overlayitem);
mapOverlays.add(itemizedoverlay);
}
}
@Override
protected boolean isRouteDisplayed() {
// TODO Auto-generated method stub
return false;
}
public class HelloItemizedOverlay extends ItemizedOverlay<OverlayItem>
{
private ArrayList<OverlayItem> mOverlays = new ArrayList<OverlayItem>();
private Context mContext;
public HelloItemizedOverlay(Drawable defaultMarker, Context context)
{
super(boundCenterBottom(defaultMarker));
mContext = context;
}
public void addOverlay(OverlayItem overlay)
{
mOverlays.add(overlay);
populate();
}
@Override
protected OverlayItem createItem(int i)
{
return mOverlays.get(i);
}
@Override
public int size()
{
return mOverlays.size();
}
@Override
protected boolean onTap(int index)
{
return true;
}
}
public class Intentservice extends IntentService
{
private static final String ACTION_RECV_MSG = "com.imrankhanandroid.intent.action.RECEIVE_MESSAGE";
private static final String ACTION_OTHER_MSG = "com.imrankhanandroid.intent.action.OTHER_MESSAGE";
ArrayList<String> arrlat_long = new ArrayList<String>();
ArrayList<String> arrlat_lat = new ArrayList<String>();
public static String str="";
public static String str1="";
int n=0;
String responseBody;
Integer topLat=0;
Integer topLon=0;
Integer bottomLat=0;
Integer bottomLon=0;
ArrayList<String> a= new ArrayList<String>();
ArrayList<String> b= new ArrayList<String>();
ArrayList<String> c= new ArrayList<String>();
ArrayList<String> d= new ArrayList<String>();
MapView mapView;
private MessageReceiver receiver;
public Intentservice()
{
super("Intentservice");
// TODO Auto-generated constructor stub
}
@Override
protected void onHandleIntent(Intent intent)
{
String strxmin,xmax,ymin,ymax;
String str=intent.getExtras().getString("strtest");
Log.d("onHandleIntent", "onHandleIntent onHandleIntent= "+str);
String[] arrtelog=str.split("/");
if(arrtelog.length >=3)
{
strxmin=arrtelog[0];
xmax=arrtelog[1];
ymin=arrtelog[2];
ymax=arrtelog[3];
// TODO Auto-generated method stub
HttpClient httpclient = new DefaultHttpClient();
String Url = "http://hiscentral.cuahsi.org/webservices/hiscentral_1_1.asmx/GetSeriesCatalogForBox2";
if(!Url.endsWith("?"))
{
Url += "?";
}
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(5);
nameValuePairs.add(new BasicNameValuePair("xmin",ymax));
nameValuePairs.add(new BasicNameValuePair("xmax", "-99"));
nameValuePairs.add(new BasicNameValuePair("ymin", "40"));
nameValuePairs.add(new BasicNameValuePair("ymax", "41"));
nameValuePairs.add(new BasicNameValuePair("networkIDs", ""));
nameValuePairs.add(new BasicNameValuePair("conceptKeyword", "precipitation"));
nameValuePairs.add(new BasicNameValuePair("beginDate", "1/1/2009"));
nameValuePairs.add(new BasicNameValuePair("endDate", "1/1/2010"));
String paramString = URLEncodedUtils.format(nameValuePairs, "utf-8");
Url += paramString;
try
{
HttpPost httppost = new HttpPost(Url);
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpclient.execute(httppost);
responseBody = EntityUtils.toString(response.getEntity());
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
factory.setValidating(false);
XmlPullParser myxml = factory.newPullParser();
InputStream raw = new ByteArrayInputStream(responseBody.getBytes());
myxml.setInput(raw, null);
int eventType = myxml.getEventType();
while(eventType != XmlPullParser.END_DOCUMENT)
{
if(eventType == XmlPullParser.START_DOCUMENT)
{
Log.d("ParseXmlActivity", "In start document");
}
else if(eventType == XmlPullParser.START_TAG)
{
if (myxml.getName().equals("latitude"))
{
str="";
str = myxml.nextText().toString();
Log.d("ParseXmlActivity", "In start tag = "+str);
arrlat_lat.add(str);
}
if (myxml.getName().equals("longitude"))
{
str = myxml.nextText().toString();
Log.d("ParseXmlActivity", "In start tag = "+str);
arrlat_long.add(str);
}
}
eventType = myxml.next();
} }
catch (XmlPullParserException e)
{
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch(IndexOutOfBoundsException e)
{
}
// IntentFilter filter = new IntentFilter(ACTION_RECV_MSG);
// filter.addCategory(Intent.CATEGORY_DEFAULT);
//receiver = new MessageReceiver();
// registerReceiver(receiver, filter);
Log.d("TEST TESTTEST", "In start TESTTEST = "+arrlat_long.get(0)+" $$$ "+arrlat_long.size());
Intent broadcastIntent = new Intent();
broadcastIntent.setAction(ACTION_RECV_MSG);
broadcastIntent.addCategory(Intent.CATEGORY_DEFAULT);
broadcastIntent.putStringArrayListExtra("codnt", arrlat_long); //arrlat_long
broadcastIntent.putStringArrayListExtra("codntlat", arrlat_lat); //arrlat_lat
sendBroadcast(broadcastIntent);
}
}
07-02 20:32:59.362: E/AndroidRuntime(2372): FATAL EXCEPTION: IntentService[Intentservice]
07-02 20:32:59.362: E/AndroidRuntime(2372): java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0
07-02 20:32:59.362: E/AndroidRuntime(2372): at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:251)
07-02 20:32:59.362: E/AndroidRuntime(2372): at java.util.ArrayList.get(ArrayList.java:304)
07-02 20:32:59.362: E/AndroidRuntime(2372): at com.imrankhanandroid.Androidtest.Intentservice.onHandleIntent(Intentservice.java:159)
07-02 20:32:59.362: E/AndroidRuntime(2372): at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:65)
07-02 20:32:59.362: E/AndroidRuntime(2372): at android.os.Handler.dispatchMessage(Handler.java:99)
07-02 20:32:59.362: E/AndroidRuntime(2372): at android.os.Looper.loop(Looper.java:137)
07-02 20:32:59.362: E/AndroidRuntime(2372): at android.os.HandlerThread.run(HandlerThread.java:60)
07-02 20:32:59.542: D/dalvikvm(2372): GC_CONCURRENT freed 152K, 3% free 10152K/10375K, paused 5ms+23ms
07-02 20:33:00.702: E/ActivityThread(2372): Activity com.imrankhanandroid.Androidtest.AndroidTestActivity has leaked IntentReceiver com.imrankhanandroid.Androidtest.AndroidTestActivity$MessageReceiver@412a0378 that was originally registered here. Are you missing a call to unregisterReceiver()?
07-02 20:33:00.702: E/ActivityThread(2372): android.app.IntentReceiverLeaked: Activity com.imrankhanandroid.Androidtest.AndroidTestActivity has leaked IntentReceiver com.imrankhanandroid.Androidtest.AndroidTestActivity$MessageReceiver@412a0378 that was originally registered here. Are you missing a call to unregisterReceiver()?
07-02 20:33:00.702: E/ActivityThread(2372): at android.app.LoadedApk$ReceiverDispatcher.<init>(LoadedApk.java:763)
07-02 20:33:00.702: E/ActivityThread(2372): at android.app.LoadedApk.getReceiverDispatcher(LoadedApk.java:567)
07-02 20:33:00.702: E/ActivityThread(2372): at android.app.ContextImpl.registerReceiverInternal(ContextImpl.java:1043)
07-02 20:33:00.702: E/ActivityThread(2372): at android.app.ContextImpl.registerReceiver(ContextImpl.java:1030)
07-02 20:33:00.702: E/ActivityThread(2372): at android.app.ContextImpl.registerReceiver(ContextImpl.java:1024)
07-02 20:33:00.702: E/ActivityThread(2372): at android.content.ContextWrapper.registerReceiver(ContextWrapper.java:341)
07-02 20:33:00.702: E/ActivityThread(2372): at com.imrankhanandroid.Androidtest.AndroidTestActivity.onCreate(AndroidTestActivity.java:130)
07-02 20:33:00.702: E/ActivityThread(2372): at android.app.Activity.performCreate(Activity.java:4465)
07-02 20:33:00.702: E/ActivityThread(2372): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
07-02 20:33:00.702: E/ActivityThread(2372): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
07-02 20:33:00.702: E/ActivityThread(2372): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
07-02 20:33:00.702: E/ActivityThread(2372): at android.app.ActivityThread.access$600(ActivityThread.java:123)
07-02 20:33:00.702: E/ActivityThread(2372): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
07-02 20:33:00.702: E/ActivityThread(2372): at android.os.Handler.dispatchMessage(Handler.java:99)
07-02 20:33:00.702: E/ActivityThread(2372): at android.os.Looper.loop(Looper.java:137)
07-02 20:33:00.702: E/ActivityThread(2372): at android.app.ActivityThread.main(ActivityThread.java:4424)
07-02 20:33:00.702: E/ActivityThread(2372): at java.lang.reflect.Method.invokeNative(Native Method)
07-02 20:33:00.702: E/ActivityThread(2372): at java.lang.reflect.Method.invoke(Method.java:511)
07-02 20:33:00.702: E/ActivityThread(2372): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
07-02 20:33:00.702: E/ActivityThread(2372): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
07-02 20:33:00.702: E/ActivityThread(2372): at dalvik.system.NativeStart.main(Native Method)
07-02 20:33:00.852: E/ActivityThread(2372): Activity com.imrankhanandroid.Androidtest.AndroidTestActivity has leaked IntentReceiver com.imrankhanandroid.Androidtest.AndroidTestActivity$MessageReceiver@412a62d8 that was originally registered here. Are you missing a call to unregisterReceiver()?
07-02 20:33:00.852: E/ActivityThread(2372): android.app.IntentReceiverLeaked: Activity com.imrankhanandroid.Androidtest.AndroidTestActivity has leaked IntentReceiver com.imrankhanandroid.Androidtest.AndroidTestActivity$MessageReceiver@412a62d8 that was originally registered here. Are you missing a call to unregisterReceiver()?
07-02 20:33:00.852: E/ActivityThread(2372): at android.app.LoadedApk$ReceiverDispatcher.<init>(LoadedApk.java:763)
07-02 20:33:00.852: E/ActivityThread(2372): at android.app.LoadedApk.getReceiverDispatcher(LoadedApk.java:567)
07-02 20:33:00.852: E/ActivityThread(2372): at android.app.ContextImpl.registerReceiverInternal(ContextImpl.java:1043)
07-02 20:33:00.852: E/ActivityThread(2372): at android.app.ContextImpl.registerReceiver(ContextImpl.java:1030)
07-02 20:33:00.852: E/ActivityThread(2372): at android.app.ContextImpl.registerReceiver(ContextImpl.java:1024)
07-02 20:33:00.852: E/ActivityThread(2372): at android.content.ContextWrapper.registerReceiver(ContextWrapper.java:341)
07-02 20:33:00.852: E/ActivityThread(2372): at com.imrankhanandroid.Androidtest.AndroidTestActivity.onCreate(AndroidTestActivity.java:126)
07-02 20:33:00.852: E/ActivityThread(2372): at android.app.Activity.performCreate(Activity.java:4465)
07-02 20:33:00.852: E/ActivityThread(2372): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
07-02 20:33:00.852: E/ActivityThread(2372): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
07-02 20:33:00.852: E/ActivityThread(2372): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
07-02 20:33:00.852: E/ActivityThread(2372): at android.app.ActivityThread.access$600(ActivityThread.java:123)
07-02 20:33:00.852: E/ActivityThread(2372): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
07-02 20:33:00.852: E/ActivityThread(2372): at android.os.Handler.dispatchMessage(Handler.java:99)
07-02 20:33:00.852: E/ActivityThread(2372): at android.os.Looper.loop(Looper.java:137)
07-02 20:33:00.852: E/ActivityThread(2372): at android.app.ActivityThread.main(ActivityThread.java:4424)
07-02 20:33:00.852: E/ActivityThread(2372): at java.lang.reflect.Method.invokeNative(Native Method)
07-02 20:33:00.852: E/ActivityThread(2372): at java.lang.reflect.Method.invoke(Method.java:511)
07-02 20:33:00.852: E/ActivityThread(2372): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
07-02 20:33:00.852: E/ActivityThread(2372): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
07-02 20:33:00.852: E/ActivityThread(2372): at dalvik.system.NativeStart.main(Native Method)
最佳答案
用
String k = topLat.toString();
String k = String.valueOf(topLat);
关于android - 将值(value)传递给Web服务时应用崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11231603/
我的问题:非常具体。我正在尝试想出解析以下文本的最简单方法: ^^domain=domain_value^^version=version_value^^account_type=account_ty
好吧,这就是我的困境: 我正在为 Reddit 子版 block 开发常见问题解答机器人。我在 bool 逻辑方面遇到了麻烦,需要一双更有经验的眼睛(这是我在 Python 中的第一次冒险)。现在,该
它首先遍历所有 y 值,然后遍历所有 x 值。我需要 X 和 y 同时改变。 For x = 3 To lr + 1 For y = 2 To lr anyl.Cells(x, 1)
假设我有一个包含 2 列的 Excel 表格:单元格 A1 到 A10 中的日期和 B1 到 B10 中的值。 我想对五月日期的所有值求和。我有3种可能性: {=SUM((MONTH(A1:A10)=
如何转换 Z-score来自 Z-distribution (standard normal distribution, Gaussian distribution)到 p-value ?我还没有找到
我正在重写一些 Javascript 代码以在 Excel VBA 中工作。由于在这个网站上搜索,我已经设法翻译了几乎所有的 Javascript 代码!但是,有些代码我无法准确理解它在做什么。这是一
我遇到过包含日期格式的时间戳日期的情况。然后我想构建一个图表,显示“点击”项目的数量“每天”, //array declaration $array1 = array("Date" => 0); $a
我是scala的新手! 我的问题是,是否有包含成员的案例类 myItem:Option[String] 当我构造类时,我需要将字符串内容包装在: Option("some string") 要么 So
我正在用 PHP 创建一个登录系统。我需要用户使用他或她的用户名或电子邮件或电话号码登录然后使用密码。因为我知道在 Java 中我们会像 email==user^ username == user 这
我在 C++ 项目上使用 sqlite,但是当我在具有文本值的列上使用 WHERE 时出现问题 我创建了一个 sqlite 数据库: CREATE TABLE User( id INTEGER
当构造函数是显式时,它不用于隐式转换。在给定的代码片段中,构造函数被标记为 explicit。那为什么在 foo obj1(10.25); 情况下它可以工作,而在 foo obj2=10.25; 情况
我知道这是一个主观问题,所以如果需要关闭它,我深表歉意,但我觉得它经常出现,让我想知道是否普遍偏爱一种形式而不是另一种形式。 显然,最好的答案是“重构代码,这样你就不需要测试是否存在错误”,但有时没有
这两个 jQuery 选择器有什么区别? 以下是来自 w3schools.com 的定义: [attribute~=value] 选择器选择带有特定属性,其值包含特定字符串。 [attribute*=
为什么我们需要CSS [attribute|=value] Selector根本当 CSS3 [attribute*=value] Selector基本上完成相同的事情,浏览器兼容性几乎相似?是否存在
我正在解决 regx 问题。我已经有一个像这样的 regx [0-9]*([.][0-9]{2})。这是 amont 格式验证。现在,通过此验证,我想包括不应提供 0 金额。比如 10 是有效的,但
我正在研究计算机科学 A 考试的样题,但无法弄清楚为什么以下问题的正确答案是正确的。 考虑以下方法。 public static void mystery(List nums) { for (
好的,我正在编写一个 Perl 程序,它有一个我收集的值的哈希值(完全在一个完全独立的程序中)并提供给这个 Perl 脚本。这个散列是 (string,string) 的散列。 我想通过 3 种方式对
我有一个表数据如下,来自不同的表。仅当第三列具有值“债务”并且第一列(日期)具有最大值时,我才想从第四列中获取最大值。最终值基于 MAX(DATE) 而不是 MAX(PRICE)。所以用简单的语言来说
我有一个奇怪的情况,只有错误状态保存到数据库中。当“状态”应该为 true 时,我的查询仍然执行 false。 我有具有此功能的 Controller public function change_a
我有一个交易表(针对所需列进行了简化): id client_id value 1 1 200 2 2 150 3 1
我是一名优秀的程序员,十分优秀!