对于android–IllegalStateException:尝试使用ContentProvider查询数据库时无效的表感兴趣的读者,本文将提供您所需要的所有信息,并且为您提供关于Android8.
对于android – IllegalStateException:尝试使用ContentProvider查询数据库时无效的表感兴趣的读者,本文将提供您所需要的所有信息,并且为您提供关于Android 8.0:java.lang.IllegalStateException:不允许启动服务 Intent、Android 8.0:java.lang.IllegalStateException:不允许启动服务Intent、Android java.lang.IllegalStateException:无法执行活动的方法、Android json错误com.google.gson.JsonSyntaxException:java.lang.IllegalStateException的宝贵知识。
本文目录一览:- android – IllegalStateException:尝试使用ContentProvider查询数据库时无效的表
- Android 8.0:java.lang.IllegalStateException:不允许启动服务 Intent
- Android 8.0:java.lang.IllegalStateException:不允许启动服务Intent
- Android java.lang.IllegalStateException:无法执行活动的方法
- Android json错误com.google.gson.JsonSyntaxException:java.lang.IllegalStateException
android – IllegalStateException:尝试使用ContentProvider查询数据库时无效的表
我已经确认该表存在正确的名称,但仍然无效.
我能够使用原始查询,但我希望我们使用ContentProvider模式进行练习.
谢谢,如果您需要更多信息,请与我们联系.
sqliteOpenHelper
public class DatabaseHelper extends sqliteOpenHelper { private static final String TAG = DatabaseHelper.class.getSimpleName(); private static final String DB_PATH = "/data/data/ashton.android.personal.worktc/databases/"; private static final String DB_NAME = "worktc.db"; private static final int DB_VERSION = 1; private sqliteDatabase myDatabase; private final Context context; public DatabaseHelper(Context context) { super(context,DB_NAME,null,DB_VERSION); this.context = context; } /** * Creates a empty database on the system and rewrites it with your own database. * */ public void createDataBase() throws IOException { boolean dbExist = this.checkDataBase(); if (dbExist) { //do nothing - database already exist } else { Log.e(TAG,"Database does not exist when trying to create it."); //By calling this method and empty database will be created into the default system path //of your application so we are gonna be able to overwrite that database with our database. this.getReadableDatabase(); this.close(); try { this.copyDataBase(); Log.e(TAG,"createDatabase database created"); } catch (IOException e) { throw new Error("Error copying database"); } } } /** * Check if the database already exist to avoid re-copying the file each time you open the application. * @return true if it exists,false if it doesn't */ private boolean checkDataBase(){ File dbFile = new File(DB_PATH + DB_NAME); return dbFile.exists(); } /** * copies your database from your local assets-folder to the just created empty database in the * system folder,from where it can be accessed and handled. * This is done by transfering bytestream. * */ private void copyDataBase() throws IOException{ //Open your local db as the input stream InputStream myInput = this.context.getAssets().open(DB_NAME); //Open the empty db as the output stream OutputStream myOutput = new FileOutputStream(DB_PATH + DB_NAME); //transfer bytes from the inputfile to the outputfile byte[] buffer = new byte[1024]; int length; while ((length = myInput.read(buffer))>0){ myOutput.write(buffer,length); } //Close the streams myOutput.flush(); myOutput.close(); myInput.close(); } public boolean openDataBase() throws sqlException { //Open the database String myPath = DB_PATH + DB_NAME; this.myDatabase = sqliteDatabase.openDatabase(myPath,sqliteDatabase.CREATE_IF_NECESSARY); return this.myDatabase != null; } @Override public synchronized void close() { if(this.myDatabase != null) this.myDatabase.close(); super.close(); } @Override public void onCreate(sqliteDatabase db) { // Todo Auto-generated method stub } @Override public void onUpgrade(sqliteDatabase db,int oldVersion,int newVersion) { // Todo Auto-generated method stub } }
内容提供商
public class WorkTCContentProvider extends ContentProvider { private static final String TAG = WorkTCContentProvider.class.getSimpleName(); public static final String AUTHORITY = "ashton.android.personal.worktc.database"; private static final UriMatcher sURIMatcher = new UriMatcher(UriMatcher.NO_MATCH); static { sURIMatcher.addURI( AUTHORITY,ProfessionTable.TABLE_NAME,ProfessionTable.PROFESSIONS); sURIMatcher.addURI( AUTHORITY,ProfessionTable.TABLE_NAME + "/#",ProfessionTable.PROFESSIONS_ID); } private DatabaseHelper database; @Override public int delete(Uri uri,String selection,String[] selectionArgs) { // Todo Auto-generated method stub return 0; } @Override public String getType(Uri uri) { // Todo Auto-generated method stub return null; } @Override public Uri insert(Uri uri,ContentValues values) { // Todo Auto-generated method stub return null; } @Override public boolean onCreate() { Log.d(TAG,"before database creation"); this.database = new DatabaseHelper(getContext()); try { this.database.createDataBase(); } catch (IOException e) { // Todo Auto-generated catch block e.printstacktrace(); } this.database.openDataBase(); this.database.close(); Log.d(TAG,"after database creation"); // this.database.getWritableDatabase().execsql( "pragma foreign_keys = on;" ); return false; } @Override public Cursor query(Uri uri,String[] projection,String[] selectionArgs,String sortOrder) { sqliteQueryBuilder queryBuilder = new sqliteQueryBuilder(); switch (sURIMatcher.match(uri)) { case ProfessionTable.PROFESSIONS: /* * Dont do anything,just do the normal query. */ break; case ProfessionTable.PROFESSIONS_ID: queryBuilder.appendWhere(ProfessionTable._ID + "=" + uri.getLastPathSegment()); break; default: throw new IllegalArgumentException("UnkNown URI: " + uri); } sqliteDatabase db = this.database.getReadableDatabase(); Cursor cursor = queryBuilder.query( db,projection,selection,selectionArgs,sortOrder); cursor.setNotificationUri(WorkTCApp.getContext().getContentResolver(),uri); return cursor; } @Override public int update(Uri uri,ContentValues values,String[] selectionArgs) { // Todo Auto-generated method stub return 0; } }
ProfessionTable
public final class ProfessionTable implements BaseColumns { public static final String TABLE_NAME = "Professions"; public static final Uri URI = Uri.parse("content://" + WorkTCContentProvider.AUTHORITY + "/" + TABLE_NAME); public static final int PROFESSIONS = 10; public static final int PROFESSIONS_ID = 11; public static final String NAME = "name"; public static final String ICON = "icon"; private ProfessionTable() {} }
错误
09-08 11:16:18.285: E/AndroidRuntime(11651): FATAL EXCEPTION: main 09-08 11:16:18.285: E/AndroidRuntime(11651): java.lang.RuntimeException: Unable to start activity ComponentInfo{ashton.android.personal.worktc/ashton.android.personal.worktc.controllers.WorkActivity}: java.lang.IllegalStateException: Invalid tables 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.app.ActivityThread.performlaunchActivity(ActivityThread.java:1651) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.app.ActivityThread.access$1500(ActivityThread.java:117) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.os.Handler.dispatchMessage(Handler.java:99) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.os.Looper.loop(Looper.java:130) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.app.ActivityThread.main(ActivityThread.java:3687) 09-08 11:16:18.285: E/AndroidRuntime(11651): at java.lang.reflect.Method.invokeNative(Native Method) 09-08 11:16:18.285: E/AndroidRuntime(11651): at java.lang.reflect.Method.invoke(Method.java:507) 09-08 11:16:18.285: E/AndroidRuntime(11651): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:842) 09-08 11:16:18.285: E/AndroidRuntime(11651): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600) 09-08 11:16:18.285: E/AndroidRuntime(11651): at dalvik.system.NativeStart.main(Native Method) 09-08 11:16:18.285: E/AndroidRuntime(11651): Caused by: java.lang.IllegalStateException: Invalid tables 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.database.sqlite.sqliteDatabase.findEditTable(sqliteDatabase.java:1127) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.database.sqlite.sqliteQueryBuilder.query(sqliteQueryBuilder.java:330) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.database.sqlite.sqliteQueryBuilder.query(sqliteQueryBuilder.java:280) 09-08 11:16:18.285: E/AndroidRuntime(11651): at ashton.android.personal.worktc.database.worktcContentProvider.query(worktcContentProvider.java:104) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.content.ContentProvider$Transport.query(ContentProvider.java:187) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.content.ContentResolver.query(ContentResolver.java:267) 09-08 11:16:18.285: E/AndroidRuntime(11651): at ashton.android.personal.worktc.views.WorkView.onFinishInflate(WorkView.java:96) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.view.LayoutInflater.rInflate(LayoutInflater.java:631) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.view.LayoutInflater.inflate(LayoutInflater.java:408) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.view.LayoutInflater.inflate(LayoutInflater.java:320) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.view.LayoutInflater.inflate(LayoutInflater.java:276) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.view.View.inflate(View.java:8884) 09-08 11:16:18.285: E/AndroidRuntime(11651): at ashton.android.personal.worktc.controllers.WorkActivity.onCreate(WorkActivity.java:30) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 09-08 11:16:18.285: E/AndroidRuntime(11651): at android.app.ActivityThread.performlaunchActivity(ActivityThread.java:1615) 09-08 11:16:18.285: E/AndroidRuntime(11651): ... 11 more
解决方法
Caused by: java.lang.IllegalStateException: Invalid tables
我注意到你没有调用setTables():
sqliteQueryBuilder queryBuilder = new sqliteQueryBuilder(); queryBuilder.setTables(ProfessionalTable.TABLE_NAME);
在尝试运行查询之前.
Android 8.0:java.lang.IllegalStateException:不允许启动服务 Intent
在应用程序启动时,应用程序启动应该执行某些网络任务的服务。以 API 级别 26 为目标后,我的应用程序无法在后台在 Android 8.0 上启动服务。
原因:java.lang.IllegalStateException:不允许启动服务 Intent {
cmp=my.app.tt/com.my.service }:应用处于后台 uid UidRecord{90372b1 u0a136 CEM idle
procs:1 seq(0,0)}
据我了解,它与:
后台执行限制有关
如果面向 Android 8.0 的应用尝试在不允许创建后台服务的情况下使用该方法,则 startService() 方法现在会引发
IllegalStateException。
“ 在不允许的情况下 ”-实际上是什么意思?以及如何解决它。我不想将我的服务设置为“前台”
Android 8.0:java.lang.IllegalStateException:不允许启动服务Intent
在应用程序启动时,应用程序启动应该执行某些网络任务的服务.
在针对API级别26后,我的应用程序无法在后台启动Android 8.0上的服务.
Caused by: java.lang.IllegalStateException: Not allowed to start
service Intent {
cmp=my.app.tt/com.my.service
}: app is in background uid UidRecord{90372b1 u0a136 CEM idle procs:1
seq(0,0,0)}
据我所知,它涉及到:
Background execution limits
The startService() method Now throws an IllegalStateException if an
app targeting Android 8.0 tries to use that method in a situation when
it isn’t permitted to create background services.
“在不允许的情况下” – 它实际意味着什么?以及如何解决它.我不想把我的服务设置为“前景”
解决方法:
允许的情况是临时白名单,其中后台服务的行为与Android O之前相同.
Under certain circumstances, a background app is placed on a temporary whitelist for several minutes. While an app is on the whitelist, it can launch services without limitation, and its background services are permitted to run. An app is placed on the whitelist when it handles a task that’s visible to the user, such as:
- Handling a high-priority Firebase Cloud Messaging (FCM) message.
- Receiving a broadcast, such as an SMS/MMS message.
- Executing a PendingIntent from a notification.
- Starting a VpnService before the VPN app promotes itself to the foreground.
资料来源:https://developer.android.com/about/versions/oreo/background.html
换句话说,如果您的后台服务不符合白名单要求,则必须使用新的JobScheduler.它与后台服务基本相同,但它会定期调用,而不是连续在后台运行.
如果您使用的是IntentService,则可以更改为JobIntentService.见@ kosev的answer below.
Android java.lang.IllegalStateException:无法执行活动的方法
您好,我是学习android的新手,我正尝试在学习Android时制作一个半有用的应用程序(对我自己),基本上我是在第一时间接受有用的Java代码(ping
X,端口扫描)并添加将它们添加到我的应用中,我无法弄清楚 为什么
会发生此错误,我确实认为这与代码的第77行有关,但是我想了解为什么它无法正常工作,因此下次我可以更好地帮助自己。很抱歉出现罗word的问题,我不知道什么时候闭嘴。
01-25 20:42:42.139: E/AndroidRuntime(1307): FATAL EXCEPTION: main
01-25 20:42:42.139: E/AndroidRuntime(1307): java.lang.IllegalStateException: Could not execute method of the activity
01-25 20:42:42.139: E/AndroidRuntime(1307): at android.view.View$1.onClick(View.java:3597)
01-25 20:42:42.139: E/AndroidRuntime(1307): at android.view.View.performClick(View.java:4202)
01-25 20:42:42.139: E/AndroidRuntime(1307): at android.view.View$PerformClick.run(View.java:17340)
01-25 20:42:42.139: E/AndroidRuntime(1307): at android.os.Handler.handleCallback(Handler.java:725)
01-25 20:42:42.139: E/AndroidRuntime(1307): at android.os.Handler.dispatchMessage(Handler.java:92)
01-25 20:42:42.139: E/AndroidRuntime(1307): at android.os.Looper.loop(Looper.java:137)
01-25 20:42:42.139: E/AndroidRuntime(1307): at android.app.ActivityThread.main(ActivityThread.java:5191)
01-25 20:42:42.139: E/AndroidRuntime(1307): at java.lang.reflect.Method.invokeNative(Native Method)
01-25 20:42:42.139: E/AndroidRuntime(1307): at java.lang.reflect.Method.invoke(Method.java:511)
01-25 20:42:42.139: E/AndroidRuntime(1307): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795)
01-25 20:42:42.139: E/AndroidRuntime(1307): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562)
01-25 20:42:42.139: E/AndroidRuntime(1307): at dalvik.system.NativeStart.main(Native Method)
01-25 20:42:42.139: E/AndroidRuntime(1307): Caused by: java.lang.reflect.InvocationTargetException
01-25 20:42:42.139: E/AndroidRuntime(1307): at java.lang.reflect.Method.invokeNative(Native Method)
01-25 20:42:42.139: E/AndroidRuntime(1307): at java.lang.reflect.Method.invoke(Method.java:511)
01-25 20:42:42.139: E/AndroidRuntime(1307): at android.view.View$1.onClick(View.java:3592)
01-25 20:42:42.139: E/AndroidRuntime(1307): ... 11 more
01-25 20:42:42.139: E/AndroidRuntime(1307): Caused by: java.lang.NullPointerException
01-25 20:42:42.139: E/AndroidRuntime(1307): at com.seven.up.MainActivity.OnClickPort(MainActivity.java:77)
01-25 20:42:42.139: E/AndroidRuntime(1307): ... 14 more
01-25 20:44:42.549: E/MPL-storeload(511): calData from inv_save_mpl_states,size=2
01-25 20:45:39.759: E/InputDispatcher(511): channel '41b55368 com.seven.up/com.seven.up.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
01-25 20:45:50.279: E/AndroidRuntime(1625): FATAL EXCEPTION: main
01-25 20:45:50.279: E/AndroidRuntime(1625): java.lang.IllegalStateException: Could not execute method of the activity
01-25 20:45:50.279: E/AndroidRuntime(1625): at android.view.View$1.onClick(View.java:3597)
01-25 20:45:50.279: E/AndroidRuntime(1625): at android.view.View.performClick(View.java:4202)
01-25 20:45:50.279: E/AndroidRuntime(1625): at android.view.View$PerformClick.run(View.java:17340)
01-25 20:45:50.279: E/AndroidRuntime(1625): at android.os.Handler.handleCallback(Handler.java:725)
01-25 20:45:50.279: E/AndroidRuntime(1625): at android.os.Handler.dispatchMessage(Handler.java:92)
01-25 20:45:50.279: E/AndroidRuntime(1625): at android.os.Looper.loop(Looper.java:137)
01-25 20:45:50.279: E/AndroidRuntime(1625): at android.app.ActivityThread.main(ActivityThread.java:5191)
01-25 20:45:50.279: E/AndroidRuntime(1625): at java.lang.reflect.Method.invokeNative(Native Method)
01-25 20:45:50.279: E/AndroidRuntime(1625): at java.lang.reflect.Method.invoke(Method.java:511)
01-25 20:45:50.279: E/AndroidRuntime(1625): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795)
01-25 20:45:50.279: E/AndroidRuntime(1625): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562)
01-25 20:45:50.279: E/AndroidRuntime(1625): at dalvik.system.NativeStart.main(Native Method)
01-25 20:45:50.279: E/AndroidRuntime(1625): Caused by: java.lang.reflect.InvocationTargetException
01-25 20:45:50.279: E/AndroidRuntime(1625): at java.lang.reflect.Method.invokeNative(Native Method)
01-25 20:45:50.279: E/AndroidRuntime(1625): at java.lang.reflect.Method.invoke(Method.java:511)
01-25 20:45:50.279: E/AndroidRuntime(1625): at android.view.View$1.onClick(View.java:3592)
01-25 20:45:50.279: E/AndroidRuntime(1625): ... 11 more
01-25 20:45:50.279: E/AndroidRuntime(1625): Caused by: java.lang.NullPointerException
01-25 20:45:50.279: E/AndroidRuntime(1625): at com.seven.up.MainActivity.OnClickPort(MainActivity.java:78)
01-25 20:45:50.279: E/AndroidRuntime(1625): ... 14 more
01-25 20:46:32.409: E/InputDispatcher(511): channel '416e8e78 com.seven.up/com.seven.up.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
01-25 20:46:35.449: E/AndroidRuntime(1830): FATAL EXCEPTION: main
01-25 20:46:35.449: E/AndroidRuntime(1830): java.lang.IllegalStateException: Could not execute method of the activity
01-25 20:46:35.449: E/AndroidRuntime(1830): at android.view.View$1.onClick(View.java:3597)
01-25 20:46:35.449: E/AndroidRuntime(1830): at android.view.View.performClick(View.java:4202)
01-25 20:46:35.449: E/AndroidRuntime(1830): at android.view.View$PerformClick.run(View.java:17340)
01-25 20:46:35.449: E/AndroidRuntime(1830): at android.os.Handler.handleCallback(Handler.java:725)
01-25 20:46:35.449: E/AndroidRuntime(1830): at android.os.Handler.dispatchMessage(Handler.java:92)
01-25 20:46:35.449: E/AndroidRuntime(1830): at android.os.Looper.loop(Looper.java:137)
01-25 20:46:35.449: E/AndroidRuntime(1830): at android.app.ActivityThread.main(ActivityThread.java:5191)
01-25 20:46:35.449: E/AndroidRuntime(1830): at java.lang.reflect.Method.invokeNative(Native Method)
01-25 20:46:35.449: E/AndroidRuntime(1830): at java.lang.reflect.Method.invoke(Method.java:511)
01-25 20:46:35.449: E/AndroidRuntime(1830): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795)
01-25 20:46:35.449: E/AndroidRuntime(1830): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562)
01-25 20:46:35.449: E/AndroidRuntime(1830): at dalvik.system.NativeStart.main(Native Method)
01-25 20:46:35.449: E/AndroidRuntime(1830): Caused by: java.lang.reflect.InvocationTargetException
01-25 20:46:35.449: E/AndroidRuntime(1830): at java.lang.reflect.Method.invokeNative(Native Method)
01-25 20:46:35.449: E/AndroidRuntime(1830): at java.lang.reflect.Method.invoke(Method.java:511)
01-25 20:46:35.449: E/AndroidRuntime(1830): at android.view.View$1.onClick(View.java:3592)
01-25 20:46:35.449: E/AndroidRuntime(1830): ... 11 more
01-25 20:46:35.449: E/AndroidRuntime(1830): Caused by: java.lang.NullPointerException
01-25 20:46:35.449: E/AndroidRuntime(1830): at com.seven.up.MainActivity.OnClickPort(MainActivity.java:77)
01-25 20:46:35.449: E/AndroidRuntime(1830): ... 14 more
01-25 20:47:40.119: E/AndroidRuntime(2009): FATAL EXCEPTION: main
01-25 20:47:40.119: E/AndroidRuntime(2009): java.lang.IllegalStateException: Could not execute method of the activity
01-25 20:47:40.119: E/AndroidRuntime(2009): at android.view.View$1.onClick(View.java:3597)
01-25 20:47:40.119: E/AndroidRuntime(2009): at android.view.View.performClick(View.java:4202)
01-25 20:47:40.119: E/AndroidRuntime(2009): at android.view.View$PerformClick.run(View.java:17340)
01-25 20:47:40.119: E/AndroidRuntime(2009): at android.os.Handler.handleCallback(Handler.java:725)
01-25 20:47:40.119: E/AndroidRuntime(2009): at android.os.Handler.dispatchMessage(Handler.java:92)
01-25 20:47:40.119: E/AndroidRuntime(2009): at android.os.Looper.loop(Looper.java:137)
01-25 20:47:40.119: E/AndroidRuntime(2009): at android.app.ActivityThread.main(ActivityThread.java:5191)
01-25 20:47:40.119: E/AndroidRuntime(2009): at java.lang.reflect.Method.invokeNative(Native Method)
01-25 20:47:40.119: E/AndroidRuntime(2009): at java.lang.reflect.Method.invoke(Method.java:511)
01-25 20:47:40.119: E/AndroidRuntime(2009): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795)
01-25 20:47:40.119: E/AndroidRuntime(2009): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562)
01-25 20:47:40.119: E/AndroidRuntime(2009): at dalvik.system.NativeStart.main(Native Method)
01-25 20:47:40.119: E/AndroidRuntime(2009): Caused by: java.lang.reflect.InvocationTargetException
01-25 20:47:40.119: E/AndroidRuntime(2009): at java.lang.reflect.Method.invokeNative(Native Method)
01-25 20:47:40.119: E/AndroidRuntime(2009): at java.lang.reflect.Method.invoke(Method.java:511)
01-25 20:47:40.119: E/AndroidRuntime(2009): at android.view.View$1.onClick(View.java:3592)
01-25 20:47:40.119: E/AndroidRuntime(2009): ... 11 more
01-25 20:47:40.119: E/AndroidRuntime(2009): Caused by: java.lang.NullPointerException
01-25 20:47:40.119: E/AndroidRuntime(2009): at com.seven.up.MainActivity.OnClickPort(MainActivity.java:77)
01-25 20:47:40.119: E/AndroidRuntime(2009): ... 14 more
01-25 20:49:29.979: E/InputDispatcher(511): channel '414e7770 com.seven.up/com.seven.up.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
01-25 20:49:30.149: E/jdwp(2216): Failed sending reply to debugger: Broken pipe
01-25 20:49:41.599: E/MPL-storeload(511): calData from inv_save_mpl_states,size=2
01-25 20:50:12.539: E/InputDispatcher(511): channel '41c0a160 com.seven.up/com.seven.up.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
01-25 20:50:13.629: E/InputManager-JNI(511): An exception was thrown by callback 'interceptKeyBeforeQueueing'.
01-25 20:50:13.629: E/InputManager-JNI(511): java.lang.NullPointerException
01-25 20:50:13.629: E/InputManager-JNI(511): at com.android.internal.policy.impl.PhoneWindowManager.interceptKeyBeforeQueueing(PhoneWindowManager.java:3948)
01-25 20:50:13.629: E/InputManager-JNI(511): at com.android.server.wm.InputMonitor.interceptKeyBeforeQueueing(InputMonitor.java:337)
01-25 20:50:13.629: E/InputManager-JNI(511): at com.android.server.input.InputManagerService.interceptKeyBeforeQueueing(InputManagerService.java:1346)
01-25 20:50:13.629: E/InputManager-JNI(511): at dalvik.system.NativeStart.run(Native Method)
01-25 20:50:13.899: E/InputManager-JNI(511): An exception was thrown by callback 'interceptKeyBeforeQueueing'.
01-25 20:50:13.899: E/InputManager-JNI(511): java.lang.NullPointerException
01-25 20:50:13.899: E/InputManager-JNI(511): at com.android.internal.policy.impl.PhoneWindowManager.interceptKeyBeforeQueueing(PhoneWindowManager.java:3948)
01-25 20:50:13.899: E/InputManager-JNI(511): at com.android.server.wm.InputMonitor.interceptKeyBeforeQueueing(InputMonitor.java:337)
01-25 20:50:13.899: E/InputManager-JNI(511): at com.android.server.input.InputManagerService.interceptKeyBeforeQueueing(InputManagerService.java:1346)
01-25 20:50:13.899: E/InputManager-JNI(511): at dalvik.system.NativeStart.run(Native Method)
01-25 20:50:19.759: E/InputDispatcher(511): channel '41419b38 com.seven.up/com.seven.up.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
01-25 20:51:49.459: E/WeatherXmlParser(2522): Couldn't parse Yahoo weather XML
01-25 20:51:49.459: E/WeatherXmlParser(2522): java.lang.NumberFormatException: Invalid float: ""
01-25 20:51:49.459: E/WeatherXmlParser(2522): at java.lang.StringToReal.invalidReal(StringToReal.java:63)
01-25 20:51:49.459: E/WeatherXmlParser(2522): at java.lang.StringToReal.parseFloat(StringToReal.java:289)
01-25 20:51:49.459: E/WeatherXmlParser(2522): at java.lang.Float.parseFloat(Float.java:300)
01-25 20:51:49.459: E/WeatherXmlParser(2522): at com.cyanogenmod.lockclock.weather.WeatherXmlParser.getFloatForAttribute(WeatherXmlParser.java:86)
01-25 20:51:49.459: E/WeatherXmlParser(2522): at com.cyanogenmod.lockclock.weather.WeatherXmlParser.parseWeatherResponse(WeatherXmlParser.java:108)
01-25 20:51:49.459: E/WeatherXmlParser(2522): at com.cyanogenmod.lockclock.weather.WeatherUpdateService$WeatherUpdateTask.doInBackground(WeatherUpdateService.java:210)
01-25 20:51:49.459: E/WeatherXmlParser(2522): at com.cyanogenmod.lockclock.weather.WeatherUpdateService$WeatherUpdateTask.doInBackground(WeatherUpdateService.java:126)
01-25 20:51:49.459: E/WeatherXmlParser(2522): at android.os.AsyncTask$2.call(AsyncTask.java:287)
01-25 20:51:49.459: E/WeatherXmlParser(2522): at java.util.concurrent.FutureTask.run(FutureTask.java:234)
01-25 20:51:49.459: E/WeatherXmlParser(2522): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
01-25 20:51:49.459: E/WeatherXmlParser(2522): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
01-25 20:51:49.459: E/WeatherXmlParser(2522): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
01-25 20:51:49.459: E/WeatherXmlParser(2522): at java.lang.Thread.run(Thread.java:856)
01-25 20:52:24.619: E/MPL-storeload(511): calData from inv_save_mpl_states,size=2
01-25 20:57:07.229: E/AndroidRuntime(2410): FATAL EXCEPTION: main
01-25 20:57:07.229: E/AndroidRuntime(2410): java.lang.IllegalStateException: Could not execute method of the activity
01-25 20:57:07.229: E/AndroidRuntime(2410): at android.view.View$1.onClick(View.java:3597)
01-25 20:57:07.229: E/AndroidRuntime(2410): at android.view.View.performClick(View.java:4202)
01-25 20:57:07.229: E/AndroidRuntime(2410): at android.view.View$PerformClick.run(View.java:17340)
01-25 20:57:07.229: E/AndroidRuntime(2410): at android.os.Handler.handleCallback(Handler.java:725)
01-25 20:57:07.229: E/AndroidRuntime(2410): at android.os.Handler.dispatchMessage(Handler.java:92)
01-25 20:57:07.229: E/AndroidRuntime(2410): at android.os.Looper.loop(Looper.java:137)
01-25 20:57:07.229: E/AndroidRuntime(2410): at android.app.ActivityThread.main(ActivityThread.java:5191)
01-25 20:57:07.229: E/AndroidRuntime(2410): at java.lang.reflect.Method.invokeNative(Native Method)
01-25 20:57:07.229: E/AndroidRuntime(2410): at java.lang.reflect.Method.invoke(Method.java:511)
01-25 20:57:07.229: E/AndroidRuntime(2410): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795)
01-25 20:57:07.229: E/AndroidRuntime(2410): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562)
01-25 20:57:07.229: E/AndroidRuntime(2410): at dalvik.system.NativeStart.main(Native Method)
01-25 20:57:07.229: E/AndroidRuntime(2410): Caused by: java.lang.reflect.InvocationTargetException
01-25 20:57:07.229: E/AndroidRuntime(2410): at java.lang.reflect.Method.invokeNative(Native Method)
01-25 20:57:07.229: E/AndroidRuntime(2410): at java.lang.reflect.Method.invoke(Method.java:511)
01-25 20:57:07.229: E/AndroidRuntime(2410): at android.view.View$1.onClick(View.java:3592)
01-25 20:57:07.229: E/AndroidRuntime(2410): ... 11 more
01-25 20:57:07.229: E/AndroidRuntime(2410): Caused by: java.lang.NullPointerException
01-25 20:57:07.229: E/AndroidRuntime(2410): at com.seven.up.MainActivity.OnClickPort(MainActivity.java:77)
01-25 20:57:07.229: E/AndroidRuntime(2410): ... 14 more
01-25 20:59:12.549: E/AndroidRuntime(3168): FATAL EXCEPTION: main
01-25 20:59:12.549: E/AndroidRuntime(3168): java.lang.IllegalStateException: Could not execute method of the activity
01-25 20:59:12.549: E/AndroidRuntime(3168): at android.view.View$1.onClick(View.java:3597)
01-25 20:59:12.549: E/AndroidRuntime(3168): at android.view.View.performClick(View.java:4202)
01-25 20:59:12.549: E/AndroidRuntime(3168): at android.view.View$PerformClick.run(View.java:17340)
01-25 20:59:12.549: E/AndroidRuntime(3168): at android.os.Handler.handleCallback(Handler.java:725)
01-25 20:59:12.549: E/AndroidRuntime(3168): at android.os.Handler.dispatchMessage(Handler.java:92)
01-25 20:59:12.549: E/AndroidRuntime(3168): at android.os.Looper.loop(Looper.java:137)
01-25 20:59:12.549: E/AndroidRuntime(3168): at android.app.ActivityThread.main(ActivityThread.java:5191)
01-25 20:59:12.549: E/AndroidRuntime(3168): at java.lang.reflect.Method.invokeNative(Native Method)
01-25 20:59:12.549: E/AndroidRuntime(3168): at java.lang.reflect.Method.invoke(Method.java:511)
01-25 20:59:12.549: E/AndroidRuntime(3168): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795)
01-25 20:59:12.549: E/AndroidRuntime(3168): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562)
01-25 20:59:12.549: E/AndroidRuntime(3168): at dalvik.system.NativeStart.main(Native Method)
01-25 20:59:12.549: E/AndroidRuntime(3168): Caused by: java.lang.reflect.InvocationTargetException
01-25 20:59:12.549: E/AndroidRuntime(3168): at java.lang.reflect.Method.invokeNative(Native Method)
01-25 20:59:12.549: E/AndroidRuntime(3168): at java.lang.reflect.Method.invoke(Method.java:511)
01-25 20:59:12.549: E/AndroidRuntime(3168): at android.view.View$1.onClick(View.java:3592)
01-25 20:59:12.549: E/AndroidRuntime(3168): ... 11 more
01-25 20:59:12.549: E/AndroidRuntime(3168): Caused by: java.lang.NullPointerException
01-25 20:59:12.549: E/AndroidRuntime(3168): at com.seven.up.MainActivity.OnClickPort(MainActivity.java:76)
01-25 20:59:12.549: E/AndroidRuntime(3168): ... 14 more
01-25 21:01:13.939: E/MPL-storeload(511): calData from inv_save_mpl_states,size=2
package com.seven.up;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.*;
import android.app.Activity;
import android.os.Bundle;
import android.text.Editable;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity implements OnClickListener {
EditText ip_address_field;
TextView scan_out;
TextView port_results;
EditText startPort;
EditText stopPort;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ip_address_field = (EditText) findViewById(R.id.ip_address_field);
ip_address_field.getText();
scan_out = (TextView) findViewById(R.id.scan_out);
Button scan_button = (Button) findViewById(R.id.scan_button);
scan_button.setOnClickListener(this);
}
public void onClick(View v) {
Editable host = ip_address_field.getText();
switch (v.getId()) {
case R.id.scan_button:
try {
String pingCmd = "ping -c 5 " + host;
String pingResult = "";
Runtime r = Runtime.getRuntime();
Process p = r.exec(pingCmd);
BufferedReader in = new BufferedReader(new InputStreamReader(
p.getInputStream()));
String inputLine;
while ((inputLine = in.readLine()) != null) {
System.out.println(inputLine);
scan_out.setText(inputLine + "\n" + "\n");
pingResult += inputLine;
scan_out.setText("/n" + pingResult);
}
in.close();
}// try
catch (IOException e) {
System.out.println(e);
}
break;
default:
break;
}
}
public void OnClickPort(View v) {
switch (v.getId()) {
case R.id.button1:
int startPortRange = Integer.parseInt(startPort.getText().toString());
int stopPortRange = Integer.parseInt(stopPort.getText().toString());
for (int i = startPortRange; i <= stopPortRange; i++) {
try {
Socket ServerSok = new Socket("192.168.0.1",i);
Toast.makeText(getApplicationContext(),"Port in use: " + i,Toast.LENGTH_LONG).show();
ServerSok.close();
} catch (Exception e) {
}
System.out.println("Port not in use: " + i);
}
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.activity_main,menu);
return super.onCreateOptionsMenu(menu);
}
}
Android json错误com.google.gson.JsonSyntaxException:java.lang.IllegalStateException
我在解析json数据时遇到此错误
Expected BEGIN_ARRAY but was BEGIN_OBJECT at line 1 column 2
我无法找到解决方案.我的json数据是:
{
"user": [
{
"email": "wijden@jerseyrest.com",
"firstName": "Wijden",
"id": "1",
"lastName": "User"
}, {
"email": "user@jerseyrest.com",
"firstName": "Sample",
"id": "2",
"lastName": "User"
}, {
"email": "ingenieur@jerseyrest.com",
"firstName": "Ingenieur",
"id": "3",
"lastName": "User"
}
]
}
这就是我做到的方式:
Type type = new Typetoken<List<WorkItem>>() { }.getType();
List<WorkItem> workitems = (List<WorkItem>) new Gson().fromJson(resultat, type);
如果你能帮助我解决问题,我将不胜感激.提前致谢
解决方法:
为了解析你的JSON,我创建了包装响应的类,即:
public class Response {
@Serializedname("user")
private List<User> userList;
//getters and setters
}
和,
public class User{
@Serializedname("id")
private int id;
@Serializedname("email")
private String email;
@Serializedname("firstName")
private String firstName;
@Serializedname("lastName")
private String lastName;
//getters and setters
}
然后,为了解析您的JSON响应,您只需要:
Gson gson = new Gson();
Response data = gson.fromJson(yourjsonString, Response.class);
然后,您可以非常轻松地访问您的数据,例如:
User user = data.getUserList.get(i);
注意:使用注释@Serializedname对于分离JSON响应中和应用程序中的字段名称很有意义,以便遵循Java命名约定…
今天关于android – IllegalStateException:尝试使用ContentProvider查询数据库时无效的表的分享就到这里,希望大家有所收获,若想了解更多关于Android 8.0:java.lang.IllegalStateException:不允许启动服务 Intent、Android 8.0:java.lang.IllegalStateException:不允许启动服务Intent、Android java.lang.IllegalStateException:无法执行活动的方法、Android json错误com.google.gson.JsonSyntaxException:java.lang.IllegalStateException等相关知识,可以在本站进行查询。
本文标签: