【问题标题】:How to show the "Send feedback to X" dialog? [duplicate]如何显示“向 X 发送反馈”对话框? [复制]
【发布时间】:2013-12-29 23:55:34
【问题描述】:

背景

某些 Google 应用允许您从应用内发送反馈,而不是去 Play 商店。

例如这个(this app):

将此与原始版本进行比较:

问题

可以打开这个对话框吗?

如果是这样,怎么做?当用户发布反馈时,真正发生了什么?它是直接发送到开发者控制台的吗?开发者可以回复这样的反馈吗?对话可以要求用户留下电子邮件吗?这个对话框有什么特点?

如果没有,他们用什么?它看起来非常类似于发送有关崩溃信息的对话框。莫非他们使用了相同的机制?

我认为它与发送错误的机制相同的原因是我写的this post,但它仅受 API 14 支持,我不确定后果...

【问题讨论】:

    标签: android android-alertdialog user-feedback


    【解决方案1】:

    是的,这是崩溃报告对话框。是的,报告会发送到开发者控制台。不,您不能回复反馈。是的,根据您引用的帖子,它需要 API 14,否则不能使用。无法自定义对话框。查看对话框功能的最佳方法是使用提供它的应用程序打开它。

    根据您的问题,听起来您的要求超出了此对话的能力范围,您可能需要发明一个本土解决方案或使用第三方解决方案。

    我已使用此代码片段来启用发送反馈并显式打开处理异常的对话框。

    @TargetApi(Build.VERSION_CODES.ICE_CREAM_SANDWICH)
    public ApplicationErrorReport createErrorReport (Exception e) {
        ApplicationErrorReport report = new ApplicationErrorReport ();
        report.packageName = report.processName = this.getPackageName ();
        report.time = System.currentTimeMillis ();
        report.type = null == e ? ApplicationErrorReport.TYPE_NONE : ApplicationErrorReport.TYPE_CRASH;
        report.systemApp = false;
    
        if (null != e) {
            ApplicationErrorReport.CrashInfo crash = new ApplicationErrorReport.CrashInfo ();
            crash.exceptionClassName = e.getClass ().getSimpleName ();
            crash.exceptionMessage = e.getMessage ();
    
            StringWriter writer = new StringWriter ();
            PrintWriter printer = new PrintWriter (writer);
            e.printStackTrace (printer);
    
            crash.stackTrace = writer.toString ();
    
            StackTraceElement stack = e.getStackTrace ()[0];
            crash.throwClassName = stack.getClassName ();
            crash.throwFileName = stack.getFileName ();
            crash.throwLineNumber = stack.getLineNumber ();
            crash.throwMethodName = stack.getMethodName ();
    
            report.crashInfo = crash;
        }
        return report;
    }
    

    【讨论】:

    • 但是google是怎么定制的呢?
    • 如何定制?
    • 是的,他们是如何定制的,例如拥有不同的标题。
    • 不是自定义的。标题来自您的应用标题和图标。它最终是您应用程序中的一个对话框。
    • 是的,您对标题的看法是正确的,尽管我确定那是定制的部分,但请检查此应用程序,它显示有一些看起来不同的东西:tinypic.com/r/2zq5vh2/8。要测试您的崩溃报告,您可以在此处下载该应用程序:play.google.com/store/apps/details?id=com.jaceks.crashapp
    猜你喜欢
    • 1970-01-01
    • 2016-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多