快速启动解析不工作在Android [英] quick start parse not working on android
问题描述
我在采用了android工作室和解析真正的新。我正在一个应用程序,并使用解析快速启动来存储数据,但每当我运行应用程序,日志猫显示此消息。
九月2日至21日:32:58.440 2492年至2492年/ com.parse.starter D / CrashReporting:
对于崩溃9月2日至21日生成的报告文件:32:58.560结果
2492年至2492年/ com.parse.starter D / CrashReporting:检索logcat的
输出...... 9月2日至二十一日:32:58.680 2492年至2492年/ com.parse.starter
D / CrashReporting:正在检索logcat的输出... 9月2日至21日:32:58.690结果
2492年至2492年/ com.parse.starter D / CrashReporting:检索logcat的
输出...... 9月2日至二十一日:32:59.160 2492年至2492年/ com.parse.starter
V / CrashReporting:关于从开始ReportSenderWorker
handleException九月2日至21日:32:59.160 2492年至2521年/ com.parse.starter D / CrashReporting:加载文件
1424532778440-抛出:IllegalArgumentException - 1.stacktrace 9月2日至二十一日:32:59.180
2492年至2521年/ com.parse.starter I / CrashReporting:发送文件
1424532778440-抛出:IllegalArgumentException - 1.stacktrace 9月2日至二十一日:32:59.180
2492年至2521年/ com.parse.starter D / CrashReporting:发送崩溃报告
解析...... 9月2日至21日:32:59.270 2492年至2492年/ com.parse.starter
E / AndroidRuntime:致命异常:主要
工艺:com.parse.starter,PID:2492
了java.lang.RuntimeException:无法启动活动ComponentInfo {com.parse.starter / com.parse.starter.ParseStarterProjectActivity}:
java.lang.IllegalArgumentException异常:不能setReadAccess为用户
与空号
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298)
在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
在android.app.ActivityThread.access $ 800(ActivityThread.java:144)
在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1278)
在android.os.Handler.dispatchMessage(Handler.java:102)
在android.os.Looper.loop(Looper.java:135)
在android.app.ActivityThread.main(ActivityThread.java:5221)
在java.lang.reflect.Method.invoke(本机方法)
在java.lang.reflect.Method.invoke(Method.java:372)
在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:899)
在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
java.lang.IllegalArgumentException异常:引起不能setReadAccess与空ID的用户
在com.parse.ParseACL.setReadAccess(ParseACL.java:305)
在com.parse.ParseACL.getDefaultACL(ParseACL.java:59)
在com.parse.ParseObject.setDefaultValues(ParseObject.java:3365)
在com.parse.ParseObject(ParseObject.java:175)
在com.parse.starter.ParseStarterProjectActivity.onCreate(ParseStarterProjectActivity.java:16)
在android.app.Activity.performCreate(Activity.java:5933)
在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2251)
在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
在android.app.ActivityThread.access $ 800(ActivityThread.java:144)
在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1278)
在android.os.Handler.dispatchMessage(Handler.java:102)
在android.os.Looper.loop(Looper.java:135)
在android.app.ActivityThread.main(ActivityThread.java:5221)
在java.lang.reflect.Method.invoke(本机方法)
在java.lang.reflect.Method.invoke(Method.java:372)
在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:899)
在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
块引用>谁能告诉我怎么解决这个问题,所以我可以用我的应用程序继续前进?这是解析应用程序类我的code:
公共类ParseApplication扩展应用{
@覆盖
公共无效的onCreate(){
super.onCreate(); //初始化崩溃报告。
ParseCrashReporting.enable(本); //启用本地数据存储。
Parse.enableLocalDatastore(本); //此处添加您的初始code
Parse.initialize(这一点,ID,重点);
ParseUser.enableAutomaticUser();
ParseACL defaultACL = new ParseACL();
//(可选)启用公共读取权限。
defaultACL.setPublicReadAccess(真);
ParseACL.setDefaultACL(defaultACL,真);
}
}和活动文件
公共类ParseStarterProjectActivity延伸活动{
/ **当第一次创建活动调用。 * /
公共无效的onCreate(捆绑savedInstanceState){
super.onCreate(savedInstanceState);
的setContentView(R.layout.main); ParseAnalytics.trackAppOpenedInBackground(getIntent()); 的parseObject的TestObject =新的parseObject(的TestObject);
testObject.put(富,酒吧);
testObject.saveInBackground();
}
}
解决方案我注释掉automaticUser()和ACL相关code在ParseApplication.java和固定它。
// ParseUser.enableAutomaticUser();
// ParseACL defaultACL =新ParseACL();
//(可选)启用公共读取权限。
// defaultACL.setPublicReadAccess(真);
// ParseACL.setDefaultACL(defaultACL,真);I'm really new at using android studio and parse. I was making an app and using parse quick start to store data but whenever i run the app, the log cat shows this message.
02-21 09:32:58.440 2492-2492/com.parse.starter D/CrashReporting﹕ Generating report file for crash 02-21 09:32:58.560
2492-2492/com.parse.starter D/CrashReporting﹕ Retrieving logcat output... 02-21 09:32:58.680 2492-2492/com.parse.starter D/CrashReporting﹕ Retrieving logcat output... 02-21 09:32:58.690
2492-2492/com.parse.starter D/CrashReporting﹕ Retrieving logcat output... 02-21 09:32:59.160 2492-2492/com.parse.starter V/CrashReporting﹕ About to start ReportSenderWorker from handleException 02-21 09:32:59.160 2492-2521/com.parse.starter D/CrashReporting﹕ Loading file 1424532778440-IllegalArgumentException-1.stacktrace 02-21 09:32:59.180 2492-2521/com.parse.starter I/CrashReporting﹕ Sending file 1424532778440-IllegalArgumentException-1.stacktrace 02-21 09:32:59.180 2492-2521/com.parse.starter D/CrashReporting﹕ Sending crash report to Parse... 02-21 09:32:59.270 2492-2492/com.parse.starter E/AndroidRuntime﹕ FATAL EXCEPTION: main Process: com.parse.starter, PID: 2492 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.parse.starter/com.parse.starter.ParseStarterProjectActivity}: java.lang.IllegalArgumentException: cannot setReadAccess for a user with null id at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360) at android.app.ActivityThread.access$800(ActivityThread.java:144) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5221) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694) Caused by: java.lang.IllegalArgumentException: cannot setReadAccess for a user with null id at com.parse.ParseACL.setReadAccess(ParseACL.java:305) at com.parse.ParseACL.getDefaultACL(ParseACL.java:59) at com.parse.ParseObject.setDefaultValues(ParseObject.java:3365) at com.parse.ParseObject.(ParseObject.java:175) at com.parse.starter.ParseStarterProjectActivity.onCreate(ParseStarterProjectActivity.java:16) at android.app.Activity.performCreate(Activity.java:5933) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2251) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360) at android.app.ActivityThread.access$800(ActivityThread.java:144) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5221) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)Can anyone please tell me how to fix this so I can move on with my app? This is my code in parse application class:
public class ParseApplication extends Application { @Override public void onCreate() { super.onCreate(); // Initialize Crash Reporting. ParseCrashReporting.enable(this); // Enable Local Datastore. Parse.enableLocalDatastore(this); // Add your initialization code here Parse.initialize(this, "id", "key"); ParseUser.enableAutomaticUser(); ParseACL defaultACL = new ParseACL(); // Optionally enable public read access. defaultACL.setPublicReadAccess(true); ParseACL.setDefaultACL(defaultACL, true); } }
and activity file
public class ParseStarterProjectActivity extends Activity { /** Called when the activity is first created. */ public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); ParseAnalytics.trackAppOpenedInBackground(getIntent()); ParseObject testObject = new ParseObject("TestObject"); testObject.put("foo", "bar"); testObject.saveInBackground(); } }
解决方案I commented out the automaticUser() and ACL related code in ParseApplication.java and that fixed it.
// ParseUser.enableAutomaticUser(); // ParseACL defaultACL = new ParseACL(); // Optionally enable public read access. // defaultACL.setPublicReadAccess(true); // ParseACL.setDefaultACL(defaultACL, true);
这篇关于快速启动解析不工作在Android的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!