Git Product home page Git Product logo

acra's People

Contributors

kevingaudin avatar

Watchers

 avatar

acra's Issues

Not sending all information

Following all the steps for 3.1.1.

Only the timestamp and package name are sent.  The rest of the default data 
does not appear in the spread sheet.

Original issue reported on code.google.com by [email protected] on 3 Apr 2011 at 4:01

Application_version set to "not_set"

What steps will reproduce the problem?
1. Received a crash report from user, application_version is "not_set"
2.
3.

What is the expected output? What do you see instead?
I expect to see the application version number


What version of the product are you using? On what operating system?
2.0.3, development was on OSX

Please provide any additional information below.
This is the 2nd release of my product where I was using ACRA. The first version 
where I used ACRA I received most Crash Reports with the version number, a 
couple reports had "not_set". Same is occuring with this new version of my app.

Original issue reported on code.google.com by [email protected] on 8 Dec 2010 at 8:40

Provide a way to override the preferences name for storing 'acra.disable'

What steps will reproduce the problem?
1. Followed the steps to let user disable/enable error reporting
2. Disable error reporting from my app. verified that 'arca.disable' is checked
3. Simulate a crash, and a report was still sent to the google docs.

What is the expected output? What do you see instead?
Error report should not be sent.

What version of the product are you using? On what operating system?
arca 2.0.3

Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 29 May 2010 at 4:37

Relaunching crashed app from home key recent app shortcut displays crash report dialog again

What steps will reproduce the problem?
1. Application configured with notification dialog crashes
2. Respond to the notification, fill in crash report dialog, and click OK
3. Long press home button and select the application icon to launch it again

What is the expected output? What do you see instead?
I expected the application to launch. Instead, the crash report dialog appears. 
 Also, the application name shows as org.acra.CrashReport... (probably 
truncated CrashReportingDialog)


What version of the product are you using? On what operating system?
ACRA 2.0.3, Droid with 2.1

Please provide any additional information below.
An option to directly open the permission dialog without first going through a 
notification would be quite desirable.

Original issue reported on code.google.com by [email protected] on 9 Jul 2010 at 2:47

Crash reports written by Acra-3.1.1 or prior will cause a later version of Acra to crash

What steps will reproduce the problem?

1. Cause an App using Acra-3.1.1 or prior to crash and write a crash report.
2. Redeploy the app with a version of Acra after Rev#250 (ie Acra3.1.1+ or 
3.2.0) without wiping the app data.
3. Start the app and you will see a notification of an Exception (from within 
Acra). The original crash report will not have been sent (and will never be).


What is the expected output? What do you see instead?

You should probably only see a warning/error in the log that Acra could not 
read the crash report. But you also see the unhandled notification Toast. And 
it will recurr each time the app is started.

What version of the product are you using? On what operating system?
Acra-3.1.1 on an emulator running Android 1.5 where I saw another similar crash 
report reading error that looks like was made irrelevant with Revision#250. But 
in tracking it down I can copnfirm that this error will occur in future 
versions of Acra.

Please provide any additional information below.

I have attached a patch that I believe will mitigate the problem caused by old 
crash reports.

Original issue reported on code.google.com by [email protected] on 21 Mar 2011 at 1:28

Attachments:

After App crash, App refuses to open and "App has crashed" notification does not bring up dialog to submit crash report.

What steps will reproduce the problem?
1. Make App crash
2. Try to start App again and it tries to start but quickly disappears
3. There is a notification stating the App has crashed. When I click on that 
nothing happens at all.
4. The only way I can get the App to start again is to completely uninstall it 
and then reinstall.

What is the expected output? What do you see instead?
When I was first setting up ACRA and I ran some tests and it worked fine. I 
expect a crash report to pop up and let the user report.

What version of the product are you using? On what operating system?
3.1.0

Please provide any additional information below.
I'm running this test on a HTC Incredible.

Original issue reported on code.google.com by [email protected] on 11 Feb 2011 at 5:41

Support for Google Apps for Domains?

Has ACRA been tested trying to post crash reports to a Google Doc that's under 
a Google Apps for Domains account (as opposed to a regular public Google 
account)? I'm trying to use a Google Apps account but not getting any crash 
reports in the doc/form.
Is there any other way to troubleshoot why ACRA isn't posting the crash reports?

Original issue reported on code.google.com by [email protected] on 3 Jan 2011 at 5:09

NPE at org.acra.CrashReportingApplication.initAcra()

As reported for my Android App - HireADroid. Stack trace follows

java.lang.RuntimeException: Unable to create application 
bostone.android.hireadroid.HireADroidApplication: java.lang.NullPointerException
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4247)
at android.app.ActivityThread.access$3000(ActivityThread.java:125)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2071)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at 
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at 
org.acra.CrashReportingApplication.initAcra(CrashReportingApplication.java:178)
at 
org.acra.CrashReportingApplication.onCreate(CrashReportingApplication.java:169)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:969)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4244)
... 10 more

Original issue reported on code.google.com by [email protected] on 22 Nov 2010 at 5:52

NullPointerException on SharedPreferences(...).edit().putBoolean("acra.enable", false).commit();

I got a NullPointerException when executing 
SharedPreferences(...).edit().putBoolean("acra.enable", false).commit();

This is particularly the case when using it as Preference like 
<CheckBoxPreference android:key="acra.enable"
       android:title="@string/pref_enable_acra"
       android:summaryOn="@string/pref_acra_enabled"
       android:summaryOff="@string/pref_acra_disabled"
       android:defaultValue="false"/>


STACKTRACE

 java.lang.NullPointerException
     at org.acra.ErrorReporter.disable(ErrorReporter.java:888)
     at org.acra.ACRA$1.onSharedPreferenceChanged(ACRA.java:137)
     at android.app.ContextImpl$SharedPreferencesImpl$EditorImpl.commit(ContextImpl.java:2869)
     at android.preference.Preference.tryCommit(Preference.java:1198)
     at android.preference.Preference.persistBoolean(Preference.java:1403)
     at android.preference.CheckBoxPreference.setChecked(CheckBoxPreference.java:154)
     at android.preference.CheckBoxPreference.onClick(CheckBoxPreference.java:143)
     at android.preference.Preference.performClick(Preference.java:810)
     at android.preference.PreferenceScreen.onItemClick(PreferenceScreen.java:198)
     at android.widget.AdapterView.performItemClick(AdapterView.java:284)
     at android.widget.ListView.performItemClick(ListView.java:3382)
     at android.widget.AbsListView$PerformClick.run(AbsListView.java:1696)
     at android.os.Handler.handleCallback(Handler.java:587)
     at android.os.Handler.dispatchMessage(Handler.java:92)
     at android.os.Looper.loop(Looper.java:144)
     at android.app.ActivityThread.main(ActivityThread.java:4937)
     at java.lang.reflect.Method.invokeNative(Native Method)
     at java.lang.reflect.Method.invoke(Method.java:521)
     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
     at dalvik.system.NativeStart.main(Native Method)

Original issue reported on code.google.com by [email protected] on 9 Feb 2011 at 12:44

Crash reports are not submitted correctly

Hi!

it seems that ACRA isn't able to post the crash report data to my Google Form.

These are my settings: 

@ReportsCrashes
(   
    formKey = "dEVSOXFPajJYZDZuOE5NcUZsdGkxaFE6MQ",
    mode = ReportingInteractionMode.NOTIFICATION,
    resNotifTickerText = R.string.crash_notif_ticker_text,
    resNotifTitle = R.string.crash_notif_title,
    resNotifText = R.string.crash_notif_text,
    resNotifIcon = android.R.drawable.stat_notify_error, // optional. default is a warning sign
    resDialogText = R.string.crash_dialog_text,
    resDialogIcon = android.R.drawable.ic_dialog_info, //optional. default is a warning sign
    resDialogTitle = R.string.crash_dialog_title, // optional. default is your application name
    resDialogCommentPrompt = R.string.crash_dialog_comment_prompt, // optional. when defined, adds a user text field input with this text resource as a label
    resDialogOkToast = R.string.crash_dialog_ok_toast // optional. displays a Toast message when the user accepts to send a report.
)


when I force a NullPointerException, I get this logcat output


I/ActivityManager( 1297): Displayed activity 
com.inthepocket.kinepolis/org.acra.CrashReportDialog: 3029 ms (total 3029 ms)
D/ACRA    (26339): Looking for error files in 
/data/data/com.inthepocket.kinepolis/files
D/ACRA    (26339): Connect to 
http://spreadsheets.google.com/formResponse?formkey=dEVSOXFPajJYZDZuOE5NcUZsdGkx
aFE6MQ&amp;ifq
W/IInputConnectionWrapper(26339): showStatusIcon on inactive InputConnection
D/InputManagerService( 1297): Starting input on non-focused client 
com.android.internal.view.IInputMethodClient$Stub$Proxy@47a9ea30 (uid=10110 
pid=26339)
W/IInputConnectionWrapper(26339): InputConnection = 
com.android.internal.widget.EditableInputConnection@476afdb0, active client = 
false
V/WindowManager( 1297): Remove Window{47c5e7b8 
com.inthepocket.kinepolis/org.acra.CrashReportDialog paused=false}: 
mSurface=null mExiting=false isAnimating=false app-animation=null 
inPendingTransaction=false mDisplayFrozen=false
D/ACRA    (26339): Posting crash report data
D/ACRA    (26339): Reading response
I/global  (26339): Default buffer size used in BufferedReader constructor. It 
would be better to be explicit if an 8k-char buffer is required.
D/ACRA    (26339): <HTML>
D/ACRA    (26339): <HEAD>
V/WindowManager( 1297): Remove Window{47efb468 Toast paused=false}: 
mSurface=Surface(name=Toast, identity=4568) mExiting=false isAnimating=false 
app-animation=null inPendingTransaction=false mDisplayFrozen=false
E/WindowManager( 1297): return in removeWindowLocked


Any idea why the form is not submitted correctly?

Thanks!
Cliff

Original issue reported on code.google.com by [email protected] on 24 Jan 2011 at 8:50

Using ACRA with ProGuard doesn't seem to produce stack traces

I'm not sure this is the right place to ask this but will ACRA work with 
ProGuard which obfuscates the method names etc.?  

What steps will reproduce the problem?
1.I've included Acra 3.0 in my Android application and if I run it without 
ProGuard it works!
2. If I include ProGuard it doesn't seem to create the report.
3. I have configured ProGuard with the following "extra" seetings in 
proguard.cfg (to keep these from being tossed out by ProGuard):

-keep public class org.acra.ErrorReporter
{
    public void addCustomData(java.lang.String,java.lang.String);
}

-keep public class org.acra.ErrorReporter
{
    public org.acra.ErrorReporter$ReportsSenderWorker handleSilentException(java.lang.Throwable);
}

I was expecting to see a stack trace in google docs which was obfuscated, but 
instead, nothing shows up with ProGuard "turned on". So, I'm assuming either it 
is my ProGuard.cfg file settings or potentially ACRA doesn't support code that 
has been obfuscated with a tool like ProGuard.  

If this is the wrong place to ask a question about ACRA I will re-post 
somewhere else...

Thanks!

Original issue reported on code.google.com by [email protected] on 8 Dec 2010 at 10:43

In SILENT mode, reports are sent only on application restart

With ACRA 3.1.0, using SILENT reporting mode, only explicit silent reports 
(cast with handleSilentException()) are sent immediately. Others are sent on 
application restart.

Original issue reported on code.google.com by kevin.gaudin on 17 Feb 2011 at 6:55

Unable to start activity

java.lang.RuntimeException: Unable to start activity 
ComponentInfo{com.alocaly.crashreport/com.alocaly.crashreport.CrashTestActivity}
: java.lang.NullPointerException
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2496)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2512)
    at android.app.ActivityThread.access$2200(ActivityThread.java:119)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1863)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:123)
    at android.app.ActivityThread.main(ActivityThread.java:4363)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:521)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
    at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
    at com.alocaly.crashreport.CrashTestActivity.onCreate(CrashTestActivity.java:17)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2459)
    ... 11 more
java.lang.NullPointerException
    at com.alocaly.crashreport.CrashTestActivity.onCreate(CrashTestActivity.java:17)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2459)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2512)
    at android.app.ActivityThread.access$2200(ActivityThread.java:119)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1863)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:123)
    at android.app.ActivityThread.main(ActivityThread.java:4363)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:521)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
    at dalvik.system.NativeStart.main(Native Method)



What version of the product are you using? On what operating system?
acra-2.0.3
android 2.1

Original issue reported on code.google.com by [email protected] on 6 Sep 2010 at 8:33

Nullpointer exception when trying to retrieve crash data

What steps will reproduce the problem?
====================================================
I implemented your lib in my application, following howto2. I intentionally
create a nullpointerexception to test the lib.


What is the expected output? What do you see instead?
====================================================
The crash report doesn't show up in google docs, instead my app/acra throws
a null pointer exception here:
[...]
05-24 17:01:37.354: ERROR/ACRA(7398): Error while retrieving crash data
        java.lang.NullPointerException
        at java.util.Hashtable.put(Hashtable.java:369)
        at org.acra.ErrorReporter.retrieveCrashData(ErrorReporter.java:284)
        at org.acra.ErrorReporter.handleException(ErrorReporter.java:399)
        at org.acra.ErrorReporter.uncaughtException(ErrorReporter.java:331)
        at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:887)
        at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:884)
        at dalvik.system.NativeStart.main(Native Method)
05-24 17:01:37.374: DEBUG/ACRA(7398): Writing crash report file.
05-24 17:01:37.394: DEBUG/ACRA(7398): Looking for error files in
/data/data/com.myapp.android/files
05-24 17:01:37.404: DEBUG/ACRA(7398): Connect to
http://spreadsheets.google.com/formResponse?formkey=abcMZVV4MmZVZWxGZzNuSWRELXA5
UVE6MQ&amp;abc
05-24 17:01:37.564: DEBUG/ACRA(7398): Posting crash report data
05-24 17:01:37.564: DEBUG/ACRA(7398): Reading response
[...]


What version of the product are you using? On what operating system?
====================================================
Nexus One, Android 2.2 (Froyo)


Please provide any additional information below.
====================================================
When I first run my app after I implemented the acra, the communication to
the google docs seem to work fine. I actually got an exception reported
there, although it was not thrown by my app, but from the acra package:

java.lang.RuntimeException: Unable to start activity
ComponentInfo{com.alocaly.crashreport/com.alocaly.crashreport.CrashTestActivity}
:
java.lang.NullPointerException
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2496)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2512)
    at android.app.ActivityThread.access$2200(ActivityThread.java:119)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1863)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:123)
    at android.app.ActivityThread.main(ActivityThread.java:4363)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:521)
    at
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
    at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
    at
com.alocaly.crashreport.CrashTestActivity.onCreate(CrashTestActivity.java:17)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2459)
    ... 11 more
java.lang.NullPointerException
    at
com.alocaly.crashreport.CrashTestActivity.onCreate(CrashTestActivity.java:17)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2459)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2512)
    at android.app.ActivityThread.access$2200(ActivityThread.java:119)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1863)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:123)
    at android.app.ActivityThread.main(ActivityThread.java:4363)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:521)
    at
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
    at dalvik.system.NativeStart.main(Native Method)


Original issue reported on code.google.com by [email protected] on 24 May 2010 at 9:10

Application starts with error notification

Acra 3.0.0

Setup for email notifications. An error occurs, users ignores error 
notification.

On next launch of the app, the error notification pops up but there is no 
notification to click on to actually send the error data.

I submitted this error already for the previous version.

Original issue reported on code.google.com by [email protected] on 27 Nov 2010 at 5:34

Enhancement: Showing the Crash Report Dialog immediately after a crash

Is it possible to show the Crash Report Dialog immediately after a crash,
essentially replacing the traditional Android Force Close dialog. The
reason for this is for better user experience. 

The existing method of using notification to display the dialog is fine, if
the user acts on it immediately. But since it is shown in the notification
area, the user may choose to ignore it or act on it later. If the user
encounters another Force Close, there won't be another notification shown
to him, and since there is no more Force Close dialog, he may be left
wondering why nothing is happening.

I've once tried to display my own crash dialog unsuccessfully. I forgot the
reason why it didn't work. Perhaps this is an Android OS limitation?

Original issue reported on code.google.com by [email protected] on 29 May 2010 at 6:49

NPE at ErrorReporter.java:519

What steps will reproduce the problem?  I have no idea

What version of the product are you using? On what operating system?
3.1.0 on Android

Please provide any additional information below.

This just showed up twice in my Crash Reports file:

java.lang.NullPointerException
    at android.widget.Toast.show(Toast.java:108)
    at org.acra.ErrorReporter$1.run(ErrorReporter.java:519)

The only parts of the crash report that were filled in were the stack trace, 
initial configuration, and crash configuration.
I haven't changed my app recently.
So, I have no idea what caused this, how, or why.
Just thought I'd report an odd crash that seems to have happened inside ACRA in 
my App.

Original issue reported on code.google.com by [email protected] on 22 Jan 2011 at 3:50

Errors trying to open crash report template in new Google Docs

What steps will reproduce the problem?
1. Upload crash report template to Google Docs
2. Open template

What is the expected output? What do you see instead?
I expected template to open without errors.  Instead, I see:
  A browser error has occurred.
  Please hold the Shift key and click the Refresh button to try again.

If I switch docs to the "Old Version", the template opens fine.

What version of the product are you using? On what operating system?
Version 2.0.3 of ACRA, Windows 7 OS, Firefox 3.6.6

Please provide any additional information below.

Original issue reported on code.google.com by [email protected] on 9 Jul 2010 at 4:43

Comment out log messages

Currently, ACRA outputs a bunch of debug log messages.
These messages may unnecessarily confuse users and therefore it would be 
helpful to keep ACRA quiet in release mode.

Original issue reported on code.google.com by [email protected] on 31 Mar 2011 at 12:31

Enhancement request: provide option not to send username

I love acra for error reporting, but I would like more control over which 
fields to send (or not send). 

In particular, I don't want to send the username for privacy reasons. 

Would it be possible to provide an option to exclude this from submitted data?  
Another possibility would be to replace the username with a "isRoot" flag or 
similar to indicate whether the app is running as root or not.

Many thanks.  Great work, by the way.


Original issue reported on code.google.com by [email protected] on 30 Mar 2011 at 2:31

error report not sent when internet connection resumes

Setup:
Acra 3.1.0 with error notification and email reporting

Steps to produce problem:
- go into flightmode
- cause an exception to get the error notification
- send the report
- force the application to stop via settings -> applications -> manage 
applications -> force stop
- turn off flightmode
- launch the app
- error notification comes again but report is not automatically being sent

Shouldn't the report be sent automatically at that point? I also tried 
ErrorReporter.getInstance().checkReportsOnApplicationStart() but it didn't make 
a difference.

Original issue reported on code.google.com by [email protected] on 29 Dec 2010 at 4:24

acra jar not in any maven repositories?

Is acra.jar available in any maven repositories?  I checked around and couldn't 
find it anywhere.

(Thanks for the great tool by the way, and apologies if I overlooked something 
blindingly obvious in my search.)

Original issue reported on code.google.com by [email protected] on 18 Nov 2010 at 11:07

Report doesn't send the latest value of custom variable, only the initial value

I added two custom variable to the reporting as follows:

ErrorReporter.getInstance().addCustomData("subscriberId", subscriberId);
ErrorReporter.getInstance().addCustomData("activityLog", ACTIVITY_LOG_STRING);

where ACTIVITY_LOG_STRING is a static class variable of my Application class 
that extends CrashReportingApplication.

For testing I set it as follows:
public static String ACTIVITY_LOG_STRING = "initial value";

but within the app I _do_ change the value.

When I logcat the value of it, I see the correct values, but the ACRA report 
would only take it's initial value, not the updated one, as stated in the FAQ 
("*only latest value for each one*"):

" All your custom data (*only latest value for each one*) will be added in the 
column "custom" just before the stack trace, one key = value pair per line. "

What is the expected output? What do you see instead?
The latest value should be reported, but I only see the initial value.
In my logcat output for debugging I see though that the value is definitely 
changing within my app.

What version of the product are you using? On what operating system?
Android 2.1update1

Please provide any additional information below.

Original issue reported on code.google.com by [email protected] on 30 Aug 2010 at 8:42

Caused by: java.lang.IllegalArgumentException: public abstract int

ACRA 3.1.1, officicial library.
Only get this reported once yet inside of my developer section of the market:

java.lang.RuntimeException: Unable to create application 
com.bitmotor.android.posterousit.PosterousItApp: 
java.lang.IllegalArgumentException: public abstract int 
org.acra.annotation.ReportsCrashes.resDialogText()
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4247)
at android.app.ActivityThread.access$3000(ActivityThread.java:125)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2071)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at 
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalArgumentException: public abstract int 
org.acra.annotation.ReportsCrashes.resDialogText()
at 
org.apache.harmony.lang.annotation.AnnotationFactory.invoke(AnnotationFactory.ja
va:309)
at $Proxy0.resDialogText(Native Method)
at org.acra.ACRA.initCrashResources(ACRA.java:214)
at org.acra.ACRA.initAcra(ACRA.java:185)
at org.acra.ACRA.init(ACRA.java:166)
at 
com.bitmotor.android.posterousit.PosterousItApp.onCreate(PosterousItApp.java:77)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:969)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4244)
... 10 more

Original issue reported on code.google.com by [email protected] on 17 Apr 2011 at 12:09

Put an abstraction layer over Google Forms POST parameter names

The naming pattern of POST parameters required for Google Forms should not be 
used for custom form Url POST requests.

Default parameters names should be representative of their content, and only 
replaced with Google Forms names when sending a report to a Google Form.

Original issue reported on code.google.com by kevin.gaudin on 28 Dec 2010 at 7:05

Add a pending reports purge API

As requested by martin.hunke

Give the app more power by exposing some functionality:
- public method to delete all saved reports
- public method to delete all saved reports that are silent
- public method to delete all saved reports that are not silent (then the app 
can decide if it want to continuously nag the user until he acknowledges or 
clears a notification)

Original issue reported on code.google.com by kevin.gaudin on 4 Dec 2010 at 4:19

ACRA SocketTimeoutException

What steps will reproduce the problem?
1. A crash occurs.
2. An Acra notification is shown to the user (looking at the logcat a socket 
timeout exception is thrown after Acra reports the error)
3. Every time the app is started a crash report (for a socket timeout 
exception) is shown.

What is the expected output? What do you see instead?
Acra shouldn't notify the user for crashes/exceptions that are thrown in the 
background by Acra itself.

What version of the product are you using? On what operating system?
acra-3.1.1

Please provide any additional information below.

W/System.err( 1598): java.net.SocketTimeoutException
W/System.err( 1598):    at 
org.apache.harmony.luni.net.PlainSocketImpl.read(PlainSocketImpl.java:461)
W/System.err( 1598):    at 
org.apache.harmony.luni.net.SocketInputStream.read(SocketInputStream.java:85)
W/System.err( 1598):    at 
org.apache.harmony.luni.net.SocketInputStream.read(SocketInputStream.java:65)
W/System.err( 1598):    at 
java.io.BufferedInputStream.fillbuf(BufferedInputStream.java:140)
W/System.err( 1598):    at 
java.io.BufferedInputStream.read(BufferedInputStream.java:225)
W/System.err( 1598):    at 
org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.rea
dLine(HttpURLConnectionImpl.java:660)
W/System.err( 1598):    at 
org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.rea
dResponseHeaders(HttpURLConnectionImpl.java:690)
W/System.err( 1598):    at 
org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.ret
rieveResponse(HttpURLConnectionImpl.java:1040)
W/System.err( 1598):    at 
org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.get
InputStream(HttpURLConnectionImpl.java:510)
W/System.err( 1598):    at org.acra.HttpUtils.doPost(HttpUtils.java:95)
W/System.err( 1598):    at 
org.acra.ErrorReporter.sendCrashReport(ErrorReporter.java:655)
W/System.err( 1598):    at 
org.acra.ErrorReporter.checkAndSendReports(ErrorReporter.java:759)
W/System.err( 1598):    at 
org.acra.ErrorReporter$ReportsSenderWorker.run(ErrorReporter.java:109)


Original issue reported on code.google.com by [email protected] on 30 Mar 2011 at 9:30

  • Merged into: #25

putCustomData won't work in remote service

What steps will reproduce the problem?

1. startService to start service in remote process
2. In onStartCommand of the service, do

ErrorReporter.getInstance().putCustomData("info","hello");

3. Crush application by doing

 String crashString = null;
 Log.e(TAG,crashString.toString());
----
I can't see "info=hello" in "custom" cell, instead that is blank.

I know calling putCustomData in main Activity (same process that ACRA.init 
called) works as documented.
----
ACRA 3.1.1 on OS 2.1.1
----
I hope putCustomData can be called from service since my service has the 
information worth posting.

Original issue reported on code.google.com by [email protected] on 13 Mar 2011 at 2:49

Status bar notification, trying to test if my Spreadsheet gets populated

FYI: Using this on an emulator, not a real device. Is the SDCard on the 
emulator acting up or am I missing something?

What steps will reproduce the problem?
My App runs fine, just don't see anything populating the spreadsheet.
Followed the How to wiki, not sure if I am missing anything.

I have the following in one of my Activities onCreate , just to test if it 
populates the spreadsheet, am I missing something?
Exception e = new Exception(); 
//ErrorReporter.getInstance().handleException(e);
ErrorReporter.getInstance().handleSilentException(e);


What is the expected output? What do you see instead?
My App works as expected, I see the following in LogCat.

Do not see the status bar notification.

03-11 11:35:19.057: ERROR/ACRA(855): Error while retrieving crash data
03-11 11:35:19.057: ERROR/ACRA(855): java.lang.NullPointerException
03-11 11:35:19.057: ERROR/ACRA(855):     at 
java.util.Hashtable.put(Hashtable.java:369)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
org.acra.ErrorReporter.retrieveCrashData(ErrorReporter.java:352)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
org.acra.ErrorReporter.handleException(ErrorReporter.java:533)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
org.acra.ErrorReporter.handleSilentException(ErrorReporter.java:590)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
com.ajay.paul.AquaScorpio.Convert.onCreate(Convert.java:106)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1586)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1638)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
android.app.ActivityThread.access$1500(ActivityThread.java:117)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
android.app.ActivityThread$H.handleMessage(ActivityThread.java:928)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
android.os.Handler.dispatchMessage(Handler.java:99)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
android.os.Looper.loop(Looper.java:123)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
android.app.ActivityThread.main(ActivityThread.java:3647)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
java.lang.reflect.Method.invokeNative(Native Method)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
java.lang.reflect.Method.invoke(Method.java:507)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
03-11 11:35:19.057: ERROR/ACRA(855):     at 
dalvik.system.NativeStart.main(Native Method)
03-11 11:35:19.179: DEBUG/ACRA(855): Writing crash report file.
03-11 11:35:19.427: ERROR/ACRA(855): An error occured while writing the report 
file...
03-11 11:35:19.427: ERROR/ACRA(855): java.lang.NullPointerException
03-11 11:35:19.427: ERROR/ACRA(855):     at 
org.acra.ErrorReporter.saveCrashReportFile(ErrorReporter.java:670)
03-11 11:35:19.427: ERROR/ACRA(855):     at 
org.acra.ErrorReporter.handleException(ErrorReporter.java:551)
03-11 11:35:19.427: ERROR/ACRA(855):     at 
org.acra.ErrorReporter.handleSilentException(ErrorReporter.java:590)
03-11 11:35:19.427: ERROR/ACRA(855):     at 
com.ajay.paul.AquaScorpio.Convert.onCreate(Convert.java:106)
03-11 11:35:19.427: ERROR/ACRA(855):     at 
android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
03-11 11:35:19.427: ERROR/ACRA(855):     at 
android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1586)
03-11 11:35:19.427: ERROR/ACRA(855):     at 
android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1638)
03-11 11:35:19.427: ERROR/ACRA(855):     at 
android.app.ActivityThread.access$1500(ActivityThread.java:117)
03-11 11:35:19.427: ERROR/ACRA(855):     at 
android.app.ActivityThread$H.handleMessage(ActivityThread.java:928)
03-11 11:35:19.427: ERROR/ACRA(855):     at 
android.os.Handler.dispatchMessage(Handler.java:99)
03-11 11:35:19.427: ERROR/ACRA(855):     at 
android.os.Looper.loop(Looper.java:123)
03-11 11:35:19.427: ERROR/ACRA(855):     at 
android.app.ActivityThread.main(ActivityThread.java:3647)
03-11 11:35:19.427: ERROR/ACRA(855):     at 
java.lang.reflect.Method.invokeNative(Native Method)
03-11 11:35:19.427: ERROR/ACRA(855):     at 
java.lang.reflect.Method.invoke(Method.java:507)
03-11 11:35:19.427: ERROR/ACRA(855):     at 
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
03-11 11:35:19.427: ERROR/ACRA(855):     at 
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
03-11 11:35:19.427: ERROR/ACRA(855):     at 
dalvik.system.NativeStart.main(Native Method)
03-11 11:35:19.577: WARN/System.err(855): java.lang.NullPointerException
03-11 11:35:19.588: WARN/System.err(855):     at 
org.acra.ErrorReporter.getCrashReportFilesList(ErrorReporter.java:690)
03-11 11:35:19.627: WARN/System.err(855):     at 
org.acra.ErrorReporter.checkAndSendReports(ErrorReporter.java:726)
03-11 11:35:19.638: WARN/System.err(855):     at 
org.acra.ErrorReporter$ReportsSenderWorker.run(ErrorReporter.java:109)


What version of the product are you using? On what operating system?
The latest, 3.1.1. OS: Windows Server 2003


Please provide any additional information below.

Original issue reported on code.google.com by ajayjoseis on 11 Mar 2011 at 4:50

persistent error notification

Setup:
Acra 3.1.0 with error notification and email reporting

Steps to produce problem:
- cause an exception to get the error notification
- force the application to stop via settings -> applications -> manage 
applications -> force stop
- launch the app
- error notification comes again

I assumed the notification shouldn't come back at this point. Let's say the 
user doesn't want to report an error. But I don't see a way to clear the error 
other than using ErrorReporter.deletePendingReports(). So the error will always 
come back until the user gives up and reports it. Or am I missing something?

Original issue reported on code.google.com by [email protected] on 29 Dec 2010 at 4:18

Preference: android:key="acra.enabled"

I followed the "How To" for version 3 of ACRA for "Can I let the user disable 
error reporting ?"

I added the following to my preferences.xml file:

<CheckBoxPreference android:key="acra.enabled"
        android:title="@string/pref_disable_acra"
        android:summaryOn="@string/pref_acra_enabled"
        android:summaryOff="@string/pref_acra_disabled"
        android:defaultValue="true"/>

And then created strings for each of the three above.

The preference shows up and I can 'check' or 'un-check' the button and the 
preference is 'remembered' between app launches.  However, I don't know that 
ACRA is looking at this value as I always see ACRA log messages in LogCat as 
shown below regardless of the setting (on or off):

DEBUG/ACRA(862): Retrieve application default SharedPreferences.
DEBUG/ACRA(862): Set OnSharedPreferenceChangeListener.
DEBUG/ACRA(862): ACRA is enabled for com.mydomain.myapp, intializing...
DEBUG/ACRA(862): Looking for error files in /data/data/com.mydomain.myapp/files

Also, I am restarting the app from scratch (forcing a stop in 
<settings><applications><manage applications> after I back out to the home 
screen ) to make sure it is coming up 'clean'.

So, my question is: is this setting being looked at by ACRA and is it truly 
turning off error reporting when the check box is not checked?  Also, it 
occurred to me that maybe I need to read in this setting and not call 
ACRA.init() depending on it's state?  I assumed ACRA would take care of it but 
maybe that is my mistake...

Thanks

Original issue reported on code.google.com by [email protected] on 11 Dec 2010 at 4:47

Data collection time is too long

It looks like the time of data collection during the creation of a report is 
quite long and make the UI freeze for a moment. Might be longer on 1.X android 
version.

Original issue reported on code.google.com by kevin.gaudin on 4 Dec 2010 at 4:13

Report displays android version number as a date.

In GoogleDocs, the fields application_version and android_version are displayed 
as dates. ex: 2.10.2 => 02/10/2002

Original issue reported on code.google.com by kevin.gaudin on 28 Nov 2010 at 4:30

Silent notification not sent silently if pending

As reported by martin.hunke in the wiki comments, reports sent with 
handleSilentException() are stored like any other reports if the network is not 
available. This triggers a notification on application start.


Original issue reported on code.google.com by kevin.gaudin on 21 Aug 2010 at 3:29

NPE during initAcra (ErrorReporter.java:685)

What version of the product are you using? On what operating system?

3.1.0

Please provide any additional information below.

The following error shows up in the Android developer console, it looks like 
Context#getFilesDir() can return null in some cases. The android docs 
(http://developer.android.com/reference/android/content/Context.html#getFilesDir
()) don't mention this, but it should probably be checked anyway.



java.lang.RuntimeException: Unable to create application 
com.zegoggles.smssync.App: java.lang.NullPointerException
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4247)
at android.app.ActivityThread.access$3000(ActivityThread.java:125)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2071)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at 
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at org.acra.ErrorReporter.getCrashReportFilesList(ErrorReporter.java:685)
at org.acra.ErrorReporter.checkReportsOnApplicationStart(ErrorReporter.java:794)
at org.acra.ACRA.initAcra(ACRA.java:196)
at org.acra.ACRA.init(ACRA.java:167)
at com.zegoggles.smssync.App.onCreate(App.java:38)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:969)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4244)
... 10 more

Original issue reported on code.google.com by [email protected] on 23 Jan 2011 at 10:08

handleException() runs on the UI thread ?

It looks like handleException() is not run in separate thread, so when no 
internet connection, application is delayed. Is there any way to resolve it?

Original issue reported on code.google.com by kevin.gaudin on 15 Nov 2010 at 10:25

PTHREAD_RWLOCK_INITIALIZER does not match pthread_rwlock_t

Create a simple rwlock_test.c file:
#include <pthread.h>
static pthread_rwlock_t myLock = PTHREAD_RWLOCK_INITIALIZER;

Compilation fails with:
<myPath>/project/jni/rwlock_test.c:2: error: missing braces around initializer
<myPath>/project/jni/rwlock_test.c:2: error: (near initialization for 
'myLock.cond')
<myPath>/project/jni/rwlock_test.c:2: error: initialization makes integer from 
pointer without a cast

Looking at android-ndk-r5b/platforms/android-9/arch-arm/usr/include/pthread.h, 
we can see that the initializer doesn't match the struct:
    228 typedef struct {
    229     pthread_mutex_t  lock;
    230     pthread_cond_t   cond;
    231     int              numLocks;
    232     int              writerThreadId;
    233     int              pendingReaders;
    234     int              pendingWriters;
    235     void*            reserved[4];  /* for future extensibility */
    236 } pthread_rwlock_t;
    237
    238 #define PTHREAD_RWLOCK_INITIALIZER  { PTHREAD_MUTEX_INITIALIZER, 0, NULL, 0, 0 }

Original issue reported on code.google.com by [email protected] on 7 Mar 2011 at 9:30

Feedback (E-Mail field?)

Often developers want to get in contact with the user who had an error.
Therefore it would be great if the user could supply his email in an optional 
extra field when using the dialog.

Original issue reported on code.google.com by [email protected] on 31 Mar 2011 at 9:35

Encrypt Email Adresses in SharedPreferences

I love the email feature, but I'm hesitant to use it if the email addresses 
aren't encrypted because this could potentially expose my user's email address 
to the world. It would be great to add encryption for email addresses.

Keep up the great work!

Original issue reported on code.google.com by [email protected] on 29 Mar 2011 at 3:44

java.lang.OutOfMemoryError from too many errors

What steps will reproduce the problem?
1. Have way to many errors
2. It tries to send them
3. It runs out of memory....

What is the expected output? What do you see instead?


What version of the product are you using? On what operating system?
3.1.2 Android 2.2

Please provide any additional information below.

java.lang.OutOfMemoryError
    at java.lang.AbstractStringBuilder.enlargeBuffer(AbstractStringBuilder.java:97)
    at java.lang.AbstractStringBuilder.append0(AbstractStringBuilder.java:157)
    at java.lang.StringBuilder.append(StringBuilder.java:217)
    at org.acra.HttpUtils.doPost(HttpUtils.java:79)
    at org.acra.ErrorReporter.sendCrashReport(ErrorReporter.java:655)
    at org.acra.ErrorReporter.checkAndSendReports(ErrorReporter.java:759)
    at org.acra.ErrorReporter$ReportsSenderWorker.run(ErrorReporter.java:109)

Original issue reported on code.google.com by [email protected] on 29 Apr 2011 at 1:44

NPE in EmailIntentSender.buildBody() when a field is null

What is the expected output? What do you see instead?
ACRA crashes when generating email report with a NullPointerException.

What version of the product are you using? On what operating system?
Android 2.2.1, HTC Desire Z, ACRA 3.1.0 (svn r300)

Please provide any additional information below.
If a CrashReportData value is null, the EmailIntentSender will throw an 
uncaught NPE when building the email body.
This is because on the following line:
builder.append(errorContent.get(field).toString());

errorContent.get(field) returns null, which causes the toString() to fail.  
Acutally, toString() is not required here, because CrashReportData extends 
EnumMap<ReportField, String>, where String is the value type.  Passing null to 
builder.append() is safe, as it will convert it to the string "null".

What steps will reproduce the problem?
1. Enable READ_PHONE_STATE permission in a project using ACRA.
2. Enable email reporting by defining the mailTo property in the 
@ReportsCrashes annotation.
2. Enable reporting of IMEI by defining ReportField.DEVICE_ID for 
mailReportFields property in the @ReportsCrashes annotation.
3. Eject the SIM card from the phone so reading the IMEI will return null.
4. Start the test app and report a crash.
5. ACRA will bomb out with an NPE and no email will be sent.

Original issue reported on code.google.com by [email protected] on 16 Mar 2011 at 2:32

In notif mode, silent reports should not send pending non-silent reports

What steps will reproduce the problem?

1. The application crashes, the user ignores (does not interact with) the 
notification.
2. A silent report is sent.


What is the expected output? What do you see instead?

Only the silent report should be sent. Instead, both crash and silent are sent, 
and the notification is then still present but with no pending report.

Original issue reported on code.google.com by kevin.gaudin on 4 Dec 2010 at 4:05

Allow silent reporting on a per exception basis

To help debug some specific issues, it would be useful to allow developers
to send silent reports with ErrorReporter.handleException() even if ACRA
has been configured in Toast or Notification mode.

Original issue reported on code.google.com by kevin.gaudin on 21 May 2010 at 1:55

Delayed report

Is there a way just to add an exception to reports, but do not send report 
immediately?

Original issue reported on code.google.com by kevin.gaudin on 15 Nov 2010 at 10:26

Activity occasionally ends abruptly without any crash report

In my ACRA-enabled app, there is a certain Activity that sometimes will end 
abruptly without being caught by ACRA. The app simply returns to the previous 
Activity in the stack, nothing in Logcat either. It's a very intermittent 
problem that, although it always happens in the same Activity, I can't 
reproduce when attached with the debugger.
Are there any kinds of Activity fatal errors that ACRA can't detect? Any ideas 
how to debug this if ACRA isn't trapping the crash?

Thanks.

Original issue reported on code.google.com by [email protected] on 1 Mar 2011 at 3:20

Basic authentication in custom url POST requests

It would be great to allow a basic authentication system (i.e. 
username/password) to securize the remote URL where the application submits the 
crash reports.

It seems that modifying HttpUtils to add a HTTP "Authorization" header with 
would do the trick.

I understand it will not be 100% sure as the password or a password hash has to 
be stored in the client.

Original issue reported on code.google.com by [email protected] on 1 Jan 2011 at 6:45

Option to also upload application log

Having the ability to get detailed error reports even on pre-FroYo platforms is 
great. Being able to get the last few lines of application log (as written by 
Log.verbose and friends) would be awesome.

I know acra already has the ability to upload key-value pairs but that requires 
adding acra-specific debug code whereas getting the log makes it easier for app 
developers to start using acra.

Original issue reported on code.google.com by [email protected] on 22 Nov 2010 at 12:47

Enhancement proposal - ACRA without internet connection permission

I really like ACRA but some users are asking why my apps (widgets) need 
internet connection. 

I would like to avoid internet connection requirement if is  really not 
necessary so I would suggest optional sending of error messages by email (just 
by invoking Send Email Intent). 

What is your opinion?

Thanks
Tom

Original issue reported on code.google.com by [email protected] on 7 Jan 2011 at 8:25

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.