Android :: Efficient Way To Clone JSONArray
May 26, 2009What's the most efficient way to clone a JSONArray?
View 2 RepliesWhat's the most efficient way to clone a JSONArray?
View 2 RepliesI'm currently working on an android app that pulls a list of forums from a JSON feed. I'm trying to parse the feed and immediately upon calling getJSONArray a JSON exception is being thrown with no stack trace. The JSON being returned is stored in an JSONObject jobj with the format as follows: However when running the following code, I get an immediate exception without a stack trace: Code...
View 1 Replies View RelatedI get this error message whenever I try to connect to my sql database:
JSONArray cannot be converted to JSONObject
Getting the data from the database works fine, but when i try to get the data of he user who is logged in i get the above error.
[HIGH]
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {[code].....
In my app I am drawing bus routes on top of a MapView. The routes have anywhere between a dozen and a few hundred GPS coordinates that describe the route that the bus takes. The problem I'm having is that once I draw out all these lines panning/zooming the MapView is incredibly slow (even clicking the 'Back' button takes a minute to happen). I'm not sure how relevant it is, but I put in some debug code then checked the logcat output and the MapView is repeatedly calling the draw() method of the Overlay whether anything has changed or not. This is happening several times a second and is causing a massive amount of garbage collection to happen (2-3 MB every second).
View 2 Replies View RelatedIs there any efficient linear algebra library for android? I need to compute matrices of different sizes(also bigger than 4x4) and rectangular too.
View 1 Replies View RelatedI want to do the following and am kind of stuck on these for a few days:
1) I was trying to draw poly lines ( I have encoded polylines, but have managed to decoded those) that move when I move the map(the only solution that I found was for Geopoints to be transformed into screen co-ordinateswhich wont move if I move the map !)
2) I have used helloItemizedOverlay to add about 150 markers and it gets very very slow.any idea what to do ? I was thinking about threads(handler)
3) I was looking for some sort of a timer function that executes a given function, say, every 1 minute or so.
4) I was also looking for ways to clear the Google map from all the markers/lines etc
My application requires that when a snapshot is taken it must store in memory and next time when I restart the phone I must get a thumbnail of that photo in list of photos and the full scale photo when I click on it.There are 2 ways I know.
1. Store images directly. Concern here is every time it has to hit directory to get image which takes some time.
2. Store all images in single xml. Concern here is XML will be too big and takes time to parse.
I have some image names stored in a database, but the images themselves are in the /res/drawable folder of the application. I need to assign these images to some views at runtime, and I'm currently doing it this way:
// public static final String DRAWABLES_PATH = ":drawable/";
int resId = getResources().getIdentifier(packageName+DRAWABLES_PATH +imageName,null,null); mButtonX.setBackgroundResource(resId); //
Is there a more efficient way to do it? Or should I be storing the images directly in the database (they are many)?
I'm using a mixture of the "Efficient Adapter" and the EndlessAdapter from CommonsGuy, and sometime the holder in getView() is null.
CODE:.............
I've put the rest of the code for both of my classes here, as it's rather large to paste inline.
Once the whole data set is loaded, scrolling up & down causes rows to disappear and re-appear too.
Currently I'm using a HashMap to map the strings to int and the int values need to be frequently accessed. I'm looking for a better way to do this if possible with minimal object creation, and preferable being able to store the values as primitive ints without wrapping them with the Integer class. (Basically, the reverse of the SparseArray's int->object mapping.)
View 4 Replies View RelatedI am trying to reduce the size of images retrieved form the camera (so ~5-8 mega pixels) down to one a a few smaller sizes (the largest being 1024x768).It looks like the OOM happens during the createBitmap. Is there a more memory efficient way to do this? Perhaps something that doesn't require me to load the entire original into memory?
View 2 Replies View RelatedIt happens that the user click on enter where i dont want to include it as a part of my input the string can end with 3 times so just replacing one wont do the job
My solution was:
CODE:........
Or just to point there without the new but i want later to dump the garbage. Or at least to dump values to the gc now ....
I currently have a Service in Android that is a sample VOIP client so it listens out for SIP messages and if it recieves one it starts up an Activity screen with UI components. Then the following SIP messages determine what the Activity is to display on the screen.
For example if its an incoming call it will display Answer or Reject or an outgoing call it will show a dialling screen. At the minute I use Intents to let the Activity know what state it should display. An example is as follows:
Intent i = new Intent();
i.setAction(SIPEngine.SIP_TRYING_INTENT);
i.putExtra("com.net.INCOMING", true);
sendBroadcast(i);
Intent x = new Intent();
x.setAction(CallManager.SIP_INCOMING_CALL_INTENT);
sendBroadcast(x);
Log.d("INTENT SENT", "INTENT SENT INCOMING CALL AFTER PROCESSINVITE");
So the activity will have a broadcast reciever registered for these intents and will switch its state according to the last intent it received...............
I would like to make a game out of many cubes and am planning on putting it on mobile platforms and also on the web using webgl. My problem is when I make a drawelements call per cube I take a hit on the frame rate. Is there a way I can make a single draw call to opengl es to draw them? The only difference between the cubes would be position and color.
View 4 Replies View RelatedI am doing a project where I have too develop an application that listens for incoming events by a service. The device that has to listen too events is an Android phone with Android SDK 1.5 on it. Currently the services that call events only implement communication trough UDP or TCP sockets. I can solve my problem by setting up a ServerSocket, but i doubt that's the most power efficient way. This application will be running most of the time, with Wi-Fi on, and I'd like too reach an long battery duration. I've been looking for options on the internet for my question for a while but i couldn't get a real answer.What is the most efficient way too listen to incoming events? Should I make an ServerSocket? or what are my options?Are there any other implementations that are more power efficient?
View 1 Replies View RelatedIn my android app i need to get 50,000 database entry(text) and compare them with a value when the activity started(in onCreate()).I am doing this with the simplest way : i get the whole table from db to a cursor.However this way is too laggy.Are there any other way to do it more effective?The app is "scrabble solver" that is why i am not using WHERE close in my query (Take the whole data annd compare it with combination of the input letters).At first i was using a big table which contains whole possible words.Now i am using 26 tables.This reduced the lag and i am making database call on a thread that solved a lot problems too.It is still little bit laggy but much better.
View 4 Replies View Relatedon softkeyboard, which one is better to give user a visual feedback during keypress:
1.redraw portion of button that was pressed to background canvas of main View to give pressed effect
2.each button has its own "pressed" View, and that View is set to visible (flashing) during keypress event (so no redraw needed but need more memory)
I know its trade-off between speed and memory usage, but I just want to know what you will do under this situation.
I'm pretty new to java programming and am looking to do basic data mappings.What I want to happen is when you click an item it goes to it's subcategory.I'm not worried about switching the data when an item is clicked. I'm just not sure how to create the data set in an efficient way using Android.Eventually this will be driven by a database but I want to figure out how to use mock-data to get this working first.I'd like to be able to access it like myData['category2'] or myData['category2']['subcategory3']Should I create this in xml files and link them up or is it best to create a new class structure for it?
View 1 Replies View RelatedWhat is most efficient way of keeping a check on time within a game thread? Currently I create a new Date() when the game starts and was thinking of creating another Date() within the game thread and comparing it with the first one. But with a screen refreshing at around 60fps (hence a new date object each time), I can't help thinking this is rather inefficient. What other ways are there of doing this?
View 8 Replies View RelatedI want to create a layout in such a way that on top edittext and button should be there in one row. The search text I enter in editext and click on search button. Then I want to display a custom list view where each row contains image and text.(As per the API demos example list14 I have tried). But when I run the application, button and edittext are being added to each row (i.e., Each row contains a image, text, editext, button.
Below is my xml file:
<!--
<FrameLayout android:layout_width="wrap_content"
android:layout_height="0dip" android:layout_weight="1"></FrameLayout>
-->
<ImageView android:id="@+id/icon" android:layout_width="48dip"
android:layout_height="48dip" />
<TextView android:id="@+id/text" android:layout_gravity="center_vertical"
android:layout_width="0dip" android:layout_weight="1.0"
android:layout_height="wrap_content" />
<!--
<EditText android:layout_width="wrap_content"
android:layout_height="wrap_content" android:id="@+id/prdsearchtb"
android:text="@string/tb_prd_search_lbl"></EditText>
-->
<!--
<TableLayout android:id="@+id/TableLayout01"
android:layout_width="fill_parent"
android:layout_height="wrap_content"> <TableRow>
-->
<Button android:id="@+id/prdsrcbutton" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="@string/btn_lbl_prd_search"
android:layout_x="2px" android:layout_y="410px"></Button>
<!-- </TableRow>
</TableLayout>
-->
and Java File:
/**
*
*/
package org.techdata.activity;
import android.app.AlertDialog;
import android.app.ListActivity;
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
/**
* @author jayanthg
*
*/
public class ProductSearch extends ListActivity {
private static class ProductSearchAdapter extends BaseAdapter {
private LayoutInflater mInflater;
private Bitmap mIcon1; private Bitmap mIcon2;
public ProductSearchAdapter(Context context) {
mInflater = LayoutInflater.from(context);
// Icons bound to the rows.
mIcon1 = BitmapFactory.decodeResource(context.getResources(),
R.drawable.icon48x48_1);
mIcon2 = BitmapFactory.decodeResource(context.getResources(),
R.drawable.icon48x48_2);
} @Override public int getCount() { return DATA.length;
} @Override public Object getItem(int position) { return position;
} @Override public long getItemId(int position) { return position;
} @Override public View getView(final int position, View convertView,
ViewGroup parent) { ViewHolder holder; Button btn=null;
if (convertView == null) { convertView = mInflater.inflate(R.layout.productsearch, null);
// Creates a ViewHolder and store references to the two children
// views // we want to bind data to. holder = new ViewHolder();
holder.text = (TextView) convertView.findViewById(R.id.text);
holder.icon = (ImageView) convertView.findViewById(R.id.icon);
btn=(Button)convertView.findViewById(R.id.prdsrcbutton);
convertView.setTag(holder);
} else {
// Get the ViewHolder back to get fast access to the TextView
// and the ImageView. holder = (ViewHolder) convertView.getTag();
}
// Bind the data efficiently with the holder.
holder.text.setText(DATA[position]);
holder.icon.setImageBitmap((position & 1) == 1 ? mIcon1 : mIcon2);
holder.icon.setOnClickListener(new View.OnClickListener() {
@Override public void onClick(View v) {
Log.i("image", " u clicked on icon Position" + position);
} } );
holder.text.setOnClickListener(new View.OnClickListener() {
@Override public void onClick(View v) {
Log.i("Text", " u clicked on text Position" + position);
} } );
btn.setOnClickListener(new View.OnClickListener() {
@Override public void onClick(View v) {
Log.i("Button","U clicked on button");
} } ); return convertView;
} static class ViewHolder { TextView text; ImageView icon;
} private static final String[] DATA = ListView product_search_list;
Button srch_btn;
EditText srch_text; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setListAdapter(new ProductSearchAdapter(this));
// setContentView(R.layout.productsearch);
// getListView().setEmptyView(findViewById(R.id.text));
// srch_text = (EditText)findViewById(R.id.prdsearchtb);
// srch_btn = (Button) findViewById(R.id.prdsearchtb);
// srch_btn.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// callProductSearchAdapter();
// }
// });
} void callProductSearchAdapter() { setListAdapter(new ProductSearchAdapter(this));
} private void createDialog(String title, String text, final Intent i) {
if (i == null) { AlertDialog ad = new AlertDialog.Builder(this).setIcon(
R.drawable.alert_dialog_icon).setPositiveButton("Ok", null)
.setTitle(title).setMessage(text).create();
ad.show();
} } }
Can someone know the answer tell me which is more efficient if the bmp is a big bmp? RemoteViews views
1. views.setImageVIewBitMap(R.id.icon, bmp)
2. bmp = BmpUtils.resizeToFitIconSize(bmp) views.setImageVIewBitMap(R.id.icon, bmp)
In short, will resizing the bmp before setting it on a remote view make it more efficient? Or should I just let the imageView take care the resizing? Code...
I defined some complex AnimationSet in xml and would like to run it on several Views (View.startAnimation()). i cannot just create one instance of this AnimationSet (using AnimationUtils.loadAnimation()) and use it as parameter of View.startAnimation(), so i have to create several instances of this AnimationSet. since loading it from xml is rather slow operation, is there a way to load it once and then clone it when needed?
View 2 Replies View RelatedI have a Samsung Q1 tablet PC installed in my car. I just got a Droid and like its GPS software better than any designed for PC I have tried. Is there a way I can clone my Droid screen onto my Q1? Sort of like the remote desktop apps out there but they all seem to be designed to access the PC via the Droid.
I don't care about controlling it via PC, I just want the GPS screen on my 7 inch screen instead of the 3.8 or whatever the Droid is. I have been researching installing Android onto PC but it doesn't sound like it works too well just yet.
I have a class which has implemented Parcelable. Can I do something like the following to create a new instance of a class?
found this from the following q: http://stackoverflow.com/questions/1626667/how-to-use-parcel-in-android
This is working ok, I can go with this but it is extra code, not sure if there's a shorter way to do it (other than properly implementing a copy constructor...)
I want to build a data structure in my application to store many entries indexed by keys. Each entry has several parameters to retrieve and update.
View 2 Replies View RelatedWhat is the most efficient way to deliver the same set of functions on different mobile platforms (Windows, Blackberry & Android, possibly iPhone)?What are your real life experience of the conversion of a common design to the minimum possible sets of source code? What are the good/bad tools?
View 1 Replies View RelatedMy app creates a lot of TextView objects and this turns out to be really slow. A look at the traceview output reveals that the bulk of the time is spent in the TextView methods that grab all the default parameters from /res and /util. The thing is, all my TextViews share 99% of these parameters. Is it possible to clone a TextView rather than create one from scratch? If not, what about if I created a pool of TextView objects and reused them?
Just to give some context, I'm generating a spreadsheet to show some data provided from an online source and the spreadsheet can be as big as 20 columns by 50 rows = 1000 cells, each with a TextView. It takes about 25 seconds just to create 1000 TextViews on my Moto Droid.
Is there a way to clone a Tablet to an image, and then load that image to multiple tablets?The Tablets would all me the same model of course, if this was a computer i would use a program like clonezilla. Also The tablets are a Samsung Galaxy Tab 10.1 and do not have micro sd card slots. Can not use WiFi to create or restore clone/image with a cloud service(connection is poor and unreliable). Device can not be rooted.
View 13 Replies View RelatedSo finally I managed to get root on my clone device . managed to do it with a patched recovery TWRP.
got fully root on the device now an no missing imei
if u have such a device contact me an i can get u the ported recovery
an after install off the recovery u can install the root
App that tunnels my text and whatsapp message to another android device.
Like this scenario:
3G --> message ( whatsapp or text ) --> android device 1 ( proxy ) --> encrypted -->WIFI ( internet ) --> Android device 2
This way i can send and receive messages trough another android device that acts as an secure message proxy.