I have more activities and i dont have any problem but when i'm starting this activity(Segunda) it break
In this Activity I try to use a customView for zoom and draw, and i cant find where is the problem
this is the activity
public class Segunda extends Activity {
#Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.activity_segunda);
//setContentView(new Panel(this));
setContentView(R.layout.activity_segunda);
}
}
this is the xml layout
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="#+id/layout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<com.andres.sun4all.Panel
android:id="#+id/Panelillo"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:layout_weight = "2">
</LinearLayout>
Logcat:
10-21 12:43:58.191: E/AndroidRuntime(27794): FATAL EXCEPTION: main
10-21 12:43:58.191: E/AndroidRuntime(27794): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.andres.sun4all/com.andres.sun4all.Segunda}: android.view.InflateException: Binary XML file line #7: Error inflating class com.andres.sun4all.Panel
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2100)
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2125)
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.app.ActivityThread.access$600(ActivityThread.java:140)
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1227)
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.os.Handler.dispatchMessage(Handler.java:99)
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.os.Looper.loop(Looper.java:137)
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.app.ActivityThread.main(ActivityThread.java:4898)
10-21 12:43:58.191: E/AndroidRuntime(27794): at java.lang.reflect.Method.invokeNative(Native Method)
10-21 12:43:58.191: E/AndroidRuntime(27794): at java.lang.reflect.Method.invoke(Method.java:511)
10-21 12:43:58.191: E/AndroidRuntime(27794): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1006)
10-21 12:43:58.191: E/AndroidRuntime(27794): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
10-21 12:43:58.191: E/AndroidRuntime(27794): at dalvik.system.NativeStart.main(Native Method)
10-21 12:43:58.191: E/AndroidRuntime(27794): Caused by: android.view.InflateException: Binary XML file line #7: Error inflating class com.andres.sun4all.Panel
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.view.LayoutInflater.createView(LayoutInflater.java:596)
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687)
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
10-21 12:43:58.191: E/AndroidRuntime(27794): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:308)
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.app.Activity.setContentView(Activity.java:1924)
10-21 12:43:58.191: E/AndroidRuntime(27794): at com.andres.sun4all.Segunda.onCreate(Segunda.java:13)
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.app.Activity.performCreate(Activity.java:5206)
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1083)
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2064)
10-21 12:43:58.191: E/AndroidRuntime(27794): ... 11 more
10-21 12:43:58.191: E/AndroidRuntime(27794): Caused by: java.lang.NoSuchMethodException: <init> [class android.content.Context, interface android.util.AttributeSet]
10-21 12:43:58.191: E/AndroidRuntime(27794): at java.lang.Class.getConstructorOrMethod(Class.java:460)
10-21 12:43:58.191: E/AndroidRuntime(27794): at java.lang.Class.getConstructor(Class.java:431)
10-21 12:43:58.191: E/AndroidRuntime(27794): at android.view.LayoutInflater.createView(LayoutInflater.java:561)
10-21 12:43:58.191: E/AndroidRuntime(27794): ... 22 more
thanks for your help!
Caused by: java.lang.NoSuchMethodException: <init> [class android.content.Context, interface android.util.AttributeSet]
it means that your custom view Panel is missing the constructor with the context and attributeset:
public void Panel(Context context, AttributeSet att) {
super(context,att)
}
which is used when the custom view is inflated from the xml
Related
I have OutOfMemoryError while creating layout with a few images.
In line where logcat show me error i start declare TextView.
Error is on Samsung Galaxy S4.
When i run apps on HTC Desire X there is no error.
What might be the cause of that and how can i fix this.
10-21 18:32:19.243: E/dalvikvm-heap(20015): Out of memory on a 15822016-byte allocation.
10-21 18:32:19.243: I/dalvikvm(20015): "main" prio=5 tid=1 RUNNABLE
10-21 18:32:19.243: I/dalvikvm(20015): | group="main" sCount=0 dsCount=0 obj=0x41d6cea0 self=0x41d5b538
10-21 18:32:19.243: I/dalvikvm(20015): | sysTid=20015 nice=0 sched=0/0 cgrp=apps handle=1074303316
10-21 18:32:19.243: I/dalvikvm(20015): | state=R schedstat=( 0 0 0 ) utm=235 stm=203 core=2
10-21 18:32:19.243: I/dalvikvm(20015): at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
10-21 18:32:19.243: I/dalvikvm(20015): at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:677)
10-21 18:32:19.243: I/dalvikvm(20015): at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:507)
10-21 18:32:19.243: I/dalvikvm(20015): at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:872)
10-21 18:32:19.243: I/dalvikvm(20015): at android.content.res.Resources.loadDrawable(Resources.java:3056)
10-21 18:32:19.243: I/dalvikvm(20015): at android.content.res.TypedArray.getDrawable(TypedArray.java:602)
10-21 18:32:19.253: I/dalvikvm(20015): at android.view.View.<init>(View.java:3694)
10-21 18:32:19.263: I/dalvikvm(20015): at android.widget.TextView.<init>(TextView.java:898)
10-21 18:32:19.263: I/dalvikvm(20015): at android.widget.TextView.<init>(TextView.java:893)
10-21 18:32:19.263: I/dalvikvm(20015): at java.lang.reflect.Constructor.constructNative(Native Method)
10-21 18:32:19.263: I/dalvikvm(20015): at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
10-21 18:32:19.263: I/dalvikvm(20015): at android.view.LayoutInflater.createView(LayoutInflater.java:600)
10-21 18:32:19.263: I/dalvikvm(20015): at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
10-21 18:32:19.263: I/dalvikvm(20015): at android.view.LayoutInflater.onCreateView(LayoutInflater.java:675)
10-21 18:32:19.263: I/dalvikvm(20015): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:700)
10-21 18:32:19.263: I/dalvikvm(20015): at android.view.LayoutInflater.rInflate(LayoutInflater.java:761)
10-21 18:32:19.263: I/dalvikvm(20015): at android.view.LayoutInflater.rInflate(LayoutInflater.java:769)
10-21 18:32:19.263: I/dalvikvm(20015): at android.view.LayoutInflater.inflate(LayoutInflater.java:498)
10-21 18:32:19.263: I/dalvikvm(20015): at android.view.LayoutInflater.inflate(LayoutInflater.java:398)
10-21 18:32:19.263: I/dalvikvm(20015): at com.example.fragments.LocalApiFragment.onCreateView(LocalApiFragment.java:40)
10-21 18:32:19.263: I/dalvikvm(20015): at android.support.v4.app.Fragment.performCreateView(Fragment.java:1504)
10-21 18:32:19.263: I/dalvikvm(20015): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:942)
10-21 18:32:19.263: I/dalvikvm(20015): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1121)
10-21 18:32:19.263: I/dalvikvm(20015): at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:682)
10-21 18:32:19.263: I/dalvikvm(20015): at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1484)
10-21 18:32:19.263: I/dalvikvm(20015): at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:450)
10-21 18:32:19.263: I/dalvikvm(20015): at android.os.Handler.handleCallback(Handler.java:733)
10-21 18:32:19.263: I/dalvikvm(20015): at android.os.Handler.dispatchMessage(Handler.java:95)
10-21 18:32:19.263: I/dalvikvm(20015): at android.os.Looper.loop(Looper.java:157)
10-21 18:32:19.263: I/dalvikvm(20015): at android.app.ActivityThread.main(ActivityThread.java:5356)
10-21 18:32:19.263: I/dalvikvm(20015): at java.lang.reflect.Method.invokeNative(Native Method)
10-21 18:32:19.263: I/dalvikvm(20015): at java.lang.reflect.Method.invoke(Method.java:515)
10-21 18:32:19.263: I/dalvikvm(20015): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
10-21 18:32:19.263: I/dalvikvm(20015): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
10-21 18:32:19.263: I/dalvikvm(20015): at dalvik.system.NativeStart.main(Native Method)
10-21 18:32:19.263: D/skia(20015): --- allocation failed for scaled bitmap
10-21 18:32:19.263: D/AndroidRuntime(20015): Shutting down VM
10-21 18:32:19.263: W/dalvikvm(20015): threadid=1: thread exiting with uncaught exception (group=0x41d6bda0)
10-21 18:32:19.263: E/AndroidRuntime(20015): FATAL EXCEPTION: main
10-21 18:32:19.263: E/AndroidRuntime(20015): Process: com.example, PID: 20015
10-21 18:32:19.263: E/AndroidRuntime(20015): android.view.InflateException: Binary XML file line #36: Error inflating class <unknown>
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.view.LayoutInflater.createView(LayoutInflater.java:626)
10-21 18:32:19.263: E/AndroidRuntime(20015): at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.view.LayoutInflater.onCreateView(LayoutInflater.java:675)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:700)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.view.LayoutInflater.rInflate(LayoutInflater.java:761)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.view.LayoutInflater.rInflate(LayoutInflater.java:769)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.view.LayoutInflater.inflate(LayoutInflater.java:498)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.view.LayoutInflater.inflate(LayoutInflater.java:398)
10-21 18:32:19.263: E/AndroidRuntime(20015): at com.example.fragments.LocalApiFragment.onCreateView(LocalApiFragment.java:40)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.support.v4.app.Fragment.performCreateView(Fragment.java:1504)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:942)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1121)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:682)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1484)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:450)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.os.Handler.handleCallback(Handler.java:733)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.os.Handler.dispatchMessage(Handler.java:95)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.os.Looper.loop(Looper.java:157)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.app.ActivityThread.main(ActivityThread.java:5356)
10-21 18:32:19.263: E/AndroidRuntime(20015): at java.lang.reflect.Method.invokeNative(Native Method)
10-21 18:32:19.263: E/AndroidRuntime(20015): at java.lang.reflect.Method.invoke(Method.java:515)
10-21 18:32:19.263: E/AndroidRuntime(20015): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
10-21 18:32:19.263: E/AndroidRuntime(20015): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
10-21 18:32:19.263: E/AndroidRuntime(20015): at dalvik.system.NativeStart.main(Native Method)
10-21 18:32:19.263: E/AndroidRuntime(20015): Caused by: java.lang.reflect.InvocationTargetException
10-21 18:32:19.263: E/AndroidRuntime(20015): at java.lang.reflect.Constructor.constructNative(Native Method)
10-21 18:32:19.263: E/AndroidRuntime(20015): at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.view.LayoutInflater.createView(LayoutInflater.java:600)
10-21 18:32:19.263: E/AndroidRuntime(20015): ... 23 more
10-21 18:32:19.263: E/AndroidRuntime(20015): Caused by: java.lang.OutOfMemoryError
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:677)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:507)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:872)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.content.res.Resources.loadDrawable(Resources.java:3056)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.content.res.TypedArray.getDrawable(TypedArray.java:602)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.view.View.<init>(View.java:3694)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.widget.TextView.<init>(TextView.java:898)
10-21 18:32:19.263: E/AndroidRuntime(20015): at android.widget.TextView.<init>(TextView.java:893)
10-21 18:32:19.263: E/AndroidRuntime(20015): ... 26 more
Your bitmap is too heavy. Resize it(e.g gimp) and try again.
I've stumble upon this problem too in most of HiDef devices such as Galaxy S4. It's because HiDef devices use xhdpi, xxhdpi and so on to inflate drawable. When they didn't find it, they scale it programmatically thus cause OutOfMemory Exception. So the solution is to put your drawable on those hdpi, xhdpi, xxhdpi, xxhdpi folder accordingly.
samsung helpdesk source
I can't display my map from Mapnik and I don't know what's the problem.
Can someone help me please! I need help!
here are my logs and my program
MainActivity
package com.formation.mapnick;
import org.osmdroid.tileprovider.tilesource.TileSourceFactory;
import org.osmdroid.util.GeoPoint;
import org.osmdroid.views.MapView;
import android.app.Activity;
import android.os.Bundle;
//import android.view.Menu;
//import android.view.MenuItem;
public class MainActivity extends Activity {
//the MapView variable:
private MapView m_mapView;
private int MAP_DEFAULT_ZOOM = 15;
private double MAP_DEFAULT_LATITUDE = 49.292531;
private double MAP_DEFAULT_LONGITUDE = -12.276610;
#Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//Find the MapView controller in that layout
m_mapView = (MapView) findViewById(R.id.mapview);
m_mapView.setBuiltInZoomControls(true);
m_mapView.setClickable(true);
m_mapView.setMultiTouchControls(true);
m_mapView.setUseDataConnection(true);
m_mapView.getController().setZoom(MAP_DEFAULT_ZOOM);
m_mapView.getController().setCenter(new GeoPoint(MAP_DEFAULT_LATITUDE,MAP_DEFAULT_LONGITUDE));
m_mapView.setTileSource(TileSourceFactory.MAPNIK);
}
}
AndroidManifest
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.formation.mapnick"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="17"
android:targetSdkVersion="20" />
<supports-screens
android:anyDensity="true"
android:resizeable="false"
android:largeScreens="true"
android:normalScreens="true"
/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<application
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="#string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
my activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="${relativePackage}.${activityClass}" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="#string/hello_world" />
<org.osmdroid.views.MapView
android:id="#+id/mapview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:enabled="true"
android:clickable="true"
android:apiKey="#string/apiKey"
/>
</RelativeLayout>
an my logs:
10-21 08:24:42.709: E/Trace(1112): error opening trace file: No such file or directory (2)
10-21 08:24:43.180: E/dalvikvm(1112): Could not find class 'org.osmdroid.views.MapView', referenced from method com.formation.mapnick.MainActivity.onCreate
10-21 08:24:43.199: W/dalvikvm(1112): VFY: unable to resolve check-cast 979 (Lorg/osmdroid/views/MapView;) in Lcom/formation/mapnick/MainActivity;
10-21 08:24:43.199: D/dalvikvm(1112): VFY: replacing opcode 0x1f at 0x000f
10-21 08:24:43.229: D/dalvikvm(1112): DexOpt: unable to opt direct call 0x18bf at 0x3e in Lcom/formation/mapnick/MainActivity;.onCreate
10-21 08:24:43.609: D/AndroidRuntime(1112): Shutting down VM
10-21 08:24:43.609: W/dalvikvm(1112): threadid=1: thread exiting with uncaught exception (group=0x40a71930)
10-21 08:24:43.661: E/AndroidRuntime(1112): FATAL EXCEPTION: main
10-21 08:24:43.661: E/AndroidRuntime(1112): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.formation.mapnick/com.formation.mapnick.MainActivity}: android.view.InflateException: Binary XML file line #12: Error inflating class org.osmdroid.views.MapView
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2180)
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.app.ActivityThread.access$600(ActivityThread.java:141)
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.os.Handler.dispatchMessage(Handler.java:99)
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.os.Looper.loop(Looper.java:137)
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.app.ActivityThread.main(ActivityThread.java:5041)
10-21 08:24:43.661: E/AndroidRuntime(1112): at java.lang.reflect.Method.invokeNative(Native Method)
10-21 08:24:43.661: E/AndroidRuntime(1112): at java.lang.reflect.Method.invoke(Method.java:511)
10-21 08:24:43.661: E/AndroidRuntime(1112): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
10-21 08:24:43.661: E/AndroidRuntime(1112): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
10-21 08:24:43.661: E/AndroidRuntime(1112): at dalvik.system.NativeStart.main(Native Method)
10-21 08:24:43.661: E/AndroidRuntime(1112): Caused by: android.view.InflateException: Binary XML file line #12: Error inflating class org.osmdroid.views.MapView
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:698)
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
10-21 08:24:43.661: E/AndroidRuntime(1112): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:270)
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.app.Activity.setContentView(Activity.java:1881)
10-21 08:24:43.661: E/AndroidRuntime(1112): at com.formation.mapnick.MainActivity.onCreate(MainActivity.java:24)
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.app.Activity.performCreate(Activity.java:5104)
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
10-21 08:24:43.661: E/AndroidRuntime(1112): ... 11 more
10-21 08:24:43.661: E/AndroidRuntime(1112): Caused by: java.lang.ClassNotFoundException: Didn't find class "org.osmdroid.views.MapView" on path: /data/app/com.formation.mapnick-1.apk
10-21 08:24:43.661: E/AndroidRuntime(1112): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:65)
10-21 08:24:43.661: E/AndroidRuntime(1112): at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
10-21 08:24:43.661: E/AndroidRuntime(1112): at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.view.LayoutInflater.createView(LayoutInflater.java:552)
10-21 08:24:43.661: E/AndroidRuntime(1112): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687)
10-21 08:24:43.661: E/AndroidRuntime(1112): ... 21 more
10-21 08:24:48.429: I/Process(1112): Sending signal. PID: 1112 SIG: 9
any idea? I have already tested it on a phone but no result!
10-21 13:54:55.337: E/WindowManager(5921): Activity org.acra.CrashReportDialog has leaked window
com.android.internal.policy.impl.PhoneWindow$DecorView{42467520 V.E..... R.....I. 0,0-0,0} that was originally added here
10-21 13:54:55.337:
E/WindowManager(5921): android.view.WindowLeaked: Activity org.acra.CrashReportDialog has leaked window
com.android.internal.policy.impl.PhoneWindow$DecorView{42467520 V.E..... R.....I. 0,0-0,0} that was originally added here
10-21 13:54:55.337:
E/WindowManager(5921): at android.view.ViewRootImpl.<init>(ViewRootImpl.java:354)
10-21 13:54:55.337: E/WindowManager(5921): at
android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:216)
10-21 13:54:55.337: E/WindowManager(5921): at
android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69)
10-21 13:54:55.337: E/WindowManager(5921): at
android.app.Dialog.show(Dialog.java:281)
10-21 13:54:55.337: E/WindowManager(5921): at
org.acra.CrashReportDialog.onCreate(CrashReportDialog.java:76)
10-21 13:54:55.337: E/WindowManager(5921): at
android.app.Activity.performCreate(Activity.java:5104)
10-21 13:54:55.337: E/WindowManager(5921): at
android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
10-21 13:54:55.337: E/WindowManager(5921): at
android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
10-21 13:54:55.337: E/WindowManager(5921): at
android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
10-21 13:54:55.337: E/WindowManager(5921): at
android.app.ActivityThread.access$600(ActivityThread.java:141)
10-21 13:54:55.337: E/WindowManager(5921): at
android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
10-21 13:54:55.337: E/WindowManager(5921): at
android.os.Handler.dispatchMessage(Handler.java:99)
10-21 13:54:55.337: E/WindowManager(5921): at android.os.Looper.loop(Looper.java:137) 10-21
13:54:55.337: E/WindowManager(5921): at android.app.ActivityThread.main(ActivityThread.java:5041)
10-21 13:54:55.337: E/WindowManager(5921):
at java.lang.reflect.Method.invokeNative(Native Method)
10-21 13:54:55.337: E/WindowManager(5921): at
java.lang.reflect.Method.invoke(Method.java:511)
10-21 13:54:55.337: E/WindowManager(5921): at
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
10-21 13:54:55.337: E/WindowManager(5921): at
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
10-21 13:54:55.337: E/WindowManager(5921): at
dalvik.system.NativeStart.main(Native Method)
Use below in the initialization of dialog -
Dialog mDialog= new Dialog(YourActivityName.this);
You're leaking your Window. This happens when your Activity creates the Dialog and you try recreating the Dialog instead of re-using your old dialog/dismiss that previous dialog.
I am developing a simple android apllication and just completed the home screen. Now if the orientation of the screen changes more than two times, it is throwing the error and application is getting crashed abrubptly.
Here is my Java Class:
public class PasswordActivity extends Activity implements OnClickListener {
Button login;
Button forgot;
Button register;
private static final String PREFERENCES = "prefs";
private static final String PREFERENCES_NAME = "pref_name";
SharedPreferences settings;
private Cursor c;
#Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
login=(Button)findViewById(R.id.login_login);
login.setOnClickListener(this);
register=(Button)findViewById(R.id.login_register);
register.setOnClickListener(this);
}
public void onClick(View v) {
}
}
And this is my Xml Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="#drawable/listpic">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingTop="5dp"
android:paddingLeft="3dp"
android:paddingRight="3dp">
<TextView
android:layout_width="fill_parent"
android:layout_weight="0.75"
android:layout_height="wrap_content"
android:text="#string/login_user_name"
android:textStyle="bold"/>
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="0.25"
android:id="#+id/login_user_name"
android:inputType="text"/>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingLeft="3dp"
android:paddingRight="3dp">
<TextView
android:layout_width="fill_parent"
android:layout_weight="0.75"
android:layout_height="wrap_content"
android:text="#string/login_password"
android:textStyle="bold"/>
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="0.25"
android:inputType="textPassword"
android:id="#+id/login_password"/>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingLeft="3dp"
android:paddingRight="3dp">
<Button
style="#style/left_button"
android:text="#string/login_submit"
android:id="#+id/login_login"/>
<Button
style="#style/right_button"
android:id="#+id/login_register"
android:text="#string/register"/>
</LinearLayout>
</LinearLayout>
Log Cat Details:
10-21 12:05:59.982: D/dalvikvm(622): GC_EXTERNAL_ALLOC freed 774 objects / 56240 bytes in 61ms
10-21 12:06:15.031: D/dalvikvm(622): GC_EXTERNAL_ALLOC freed 737 objects / 30992 bytes in 59ms
10-21 12:06:18.022: E/dalvikvm-heap(622): 7596000-byte external allocation too large for this process.
10-21 12:06:18.022: E/GraphicsJNI(622): VM won't let us allocate 7596000 bytes
10-21 12:06:18.043: D/AndroidRuntime(622): Shutting down VM
10-21 12:06:18.043: W/dalvikvm(622): threadid=1: thread exiting with uncaught exception (group=0x4001d800)
10-21 12:06:18.092: E/AndroidRuntime(622): FATAL EXCEPTION: main
10-21 12:06:18.092: E/AndroidRuntime(622): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ravi.password/com.ravi.password.PasswordActivity}: android.view.InflateException: Binary XML file line #2: Error inflating class <unknown>
10-21 12:06:18.092: E/AndroidRuntime(622): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
10-21 12:06:18.092: E/AndroidRuntime(622): at android.app.ActivityThread.main(ActivityThread.java:4627)
10-21 12:06:18.092: E/AndroidRuntime(622): at java.lang.reflect.Method.invokeNative(Native Method)
10-21 12:06:18.092: E/AndroidRuntime(622): at java.lang.reflect.Method.invoke(Method.java:521)
10-21 12:06:18.092: E/AndroidRuntime(622): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-21 12:06:18.092: E/AndroidRuntime(622): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-21 12:06:18.092: E/AndroidRuntime(622): at dalvik.system.NativeStart.main(Native Method)
10-21 12:06:18.092: E/AndroidRuntime(622): Caused by: android.view.InflateException: Binary XML file line #2: Error inflating class <unknown>
10-21 12:06:18.092: E/AndroidRuntime(622): at android.view.LayoutInflater.createView(LayoutInflater.java:513)
10-21 12:06:18.092: E/AndroidRuntime(622): at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
10-21 12:06:18.092: E/AndroidRuntime(622): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:563)
10-21 12:06:18.092: E/AndroidRuntime(622): at android.view.LayoutInflater.inflate(LayoutInflater.java:385)
10-21 12:06:18.092: E/AndroidRuntime(622): at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
10-21 12:06:18.092: E/AndroidRuntime(622): at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
10-21 12:06:18.092: E/AndroidRuntime(622): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:198)
10-21 12:06:18.092: E/AndroidRuntime(622): at android.app.Activity.setContentView(Activity.java:1647)
10-21 12:06:18.092: E/AndroidRuntime(622): at com.ravi.password.PasswordActivity.onCreate(PasswordActivity.java:34)
10-21 12:06:18.092: E/AndroidRuntime(622): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
10-21 12:06:18.092: E/AndroidRuntime(622): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
10-21 12:06:18.092: E/AndroidRuntime(622): ... 12 more
10-21 12:06:18.092: E/AndroidRuntime(622): Caused by: java.lang.reflect.InvocationTargetException
10-21 12:06:18.092: E/AndroidRuntime(622): at android.widget.LinearLayout.<init>(LinearLayout.java:115)
10-21 12:06:18.092: E/AndroidRuntime(622): at java.lang.reflect.Constructor.constructNative(Native Method)
10-21 12:06:18.092: E/AndroidRuntime(622): at java.lang.reflect.Constructor.newInstance(Constructor.java:446)
10-21 12:06:18.092: E/AndroidRuntime(622): at android.view.LayoutInflater.createView(LayoutInflater.java:500)
10-21 12:06:18.092: E/AndroidRuntime(622): ... 22 more
10-21 12:06:18.092: E/AndroidRuntime(622): Caused by: java.lang.OutOfMemoryError: bitmap size exceeds VM budget
10-21 12:06:18.092: E/AndroidRuntime(622): at android.graphics.Bitmap.nativeCreate(Native Method)
10-21 12:06:18.092: E/AndroidRuntime(622): at android.graphics.Bitmap.createBitmap(Bitmap.java:468)
10-21 12:06:18.092: E/AndroidRuntime(622): at android.graphics.Bitmap.createBitmap(Bitmap.java:435)
10-21 12:06:18.092: E/AndroidRuntime(622): at android.graphics.Bitmap.createScaledBitmap(Bitmap.java:340)
10-21 12:06:18.092: E/AndroidRuntime(622): at android.graphics.BitmapFactory.finishDecode(BitmapFactory.java:488)
10-21 12:06:18.092: E/AndroidRuntime(622): at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:462)
10-21 12:06:18.092: E/AndroidRuntime(622): at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:323)
10-21 12:06:18.092: E/AndroidRuntime(622): at android.view.ViewGroup.<init>(ViewGroup.java:285)
10-21 12:06:18.092: E/AndroidRuntime(622): ... 26 more
Images used are of very small size around 5kb.
At runtime, Android resize's images based on need (based on the screen size and resolution). It uses Bitmap's for doing the resizing internally. Which, obviously, is very memory intensive (kinda allocates memory like crazy). One quick way to fix such issues can be, that you copy all drawable files to drawable-ldpi, mdpi, hdpi folders. This way android will just pick up the files from these folders and not resize them.
Its a random kind exception, a real pain to fix.
please follow background image size
for Supported device
LDPI:
Portrait: 200x320px
Landscape: 320x200px
MDPI:
Portrait: 320x480px
Landscape: 480x320px
HDPI:
Portrait: 480x800px
Landscape: 800x480px
XHDPI:
Portrait: 720px1280px
Landscape: 1280x720px
Sorry for my bad English
I had the same problem, if you put any "xml" files into "drawable-24" just move them to "drawable", this was the solution that i did to solve this problem
have a nice day :)
As the others clarified, part of a problem was an issue related to the background image I'd set for my layout. However, getting that solved, I persistently encountered the error:
Unfortunately the application has stopped
With trial and error, I found the problem was caused by the <view> elements which after deleting them, I could eventually run the application.
when I run my project with the Commonsware TouchListView inside a TabGroupActivity, I can see the ListView but when I try to Drag an item the app crashes. I have this in the log :
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): FATAL EXCEPTION: main
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): android.view.WindowManager$BadTokenException: Unable to add window -- token android.app.LocalActivityManager$LocalActivityRecord#4099bfd0 is not valid; is your activity running?
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.ViewRoot.setView(ViewRoot.java:527)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:177)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.Window$LocalWindowManager.addView(Window.java:424)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at com.commonsware.cwac.tlv.TouchListView.startDragging(TouchListView.java:419)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at com.commonsware.cwac.tlv.TouchListView.onInterceptTouchEvent(TouchListView.java:176)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:848)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:869)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:869)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1691)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1125)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.app.Activity.dispatchTouchEvent(Activity.java:2096)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1675)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:869)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:869)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1691)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1125)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.app.Activity.dispatchTouchEvent(Activity.java:2096)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1675)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:869)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:869)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:869)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:869)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:869)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:869)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1691)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1125)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.app.Activity.dispatchTouchEvent(Activity.java:2096)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1675)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.ViewRoot.deliverPointerEvent(ViewRoot.java:2194)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.view.ViewRoot.handleMessage(ViewRoot.java:1878)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.os.Handler.dispatchMessage(Handler.java:99)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.os.Looper.loop(Looper.java:130)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at android.app.ActivityThread.main(ActivityThread.java:3683)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at java.lang.reflect.Method.invokeNative(Native Method)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at java.lang.reflect.Method.invoke(Method.java:507)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
10-21 11:21:50.433: ERROR/AndroidRuntime(23139): at dalvik.system.NativeStart.main(Native Method)
I do not support activities-in-tabs for any of the CWAC components. It is an officially deprecated technique. It was never a very good idea in the first place, IMHO.
The TouchListView code comes from an Android open source application that does not use tabs in the activity with the drag-and-drop. The technique it uses for the drag indicator -- adding it as a view to the Window -- probably does not work for activities-in-tabs. It may work if you set up your tabs to have views as their contents, as you can see in this sample project.