标签: instabug

应用程序的Info.plist必须包含一个NSMicrophoneUsageDescription键,其中包含一个字符串值,向用户解释应用程序如何使用此数据

获得构建拒绝应用程序Info.plist必须包含一个NSMicrophoneUsageDescription带有字符串值的键,向用户解释应用程序如何使用此数据.

该应用程序不使用麦克风.或者我认为.

如何追踪使用麦克风的位置?

UPD23112016:鉴于懒惰的答案正在被投票,我已经向苹果提交了一项新的功能请求以关闭此安全漏洞.

UPD05042017:一旦您通过一些半裸的NSMicrophoneUsageDescription将麦克风访问代理到某些第三方框架,您仍然很麻烦,如果用户同意允许麦克风访问,则无法控制何时何地可以使用它.伙计们,请尽职尽责并制作精确的NSMicrophoneUsageDescription,它反映了当使用被第三方仅二进制框架遮挡时,麦克风被完全不受您控制的代码所使用的事实.谢谢.

itunesconnect ios instabug ios10

42
推荐指数
5
解决办法
5万
查看次数

Instabug for Android构建警告

我们有一个包含4个模块的gradle项目:1个库模块和3个Android应用程序.要构建我们的应用程序,我们使用circleCI.我们还根据指南禁用了circleCI构建的预定义.

在我将Instabug添加到我们的一个项目之前,一切都很棒.从那以后,我们一直在达到circleCI 4GB的限制.最重要的是,将Instabug作为依赖项的项目将启动preDexgradle任务,无论如何.要开始新的构建,我们使用以下命令:./gradlew assembleDebug -PpreDexEnable=false.

使用Instabug的项目在构建期间会收到一些警告,如下所示:

忽略没有关联的EnclosingMethod属性的匿名内部类(com.instabug.library.b)的InnerClasses属性.这个类可能是由一个没有以现代.class文件格式为目标的编译器生成的.建议的解决方案是使用最新的编译器从源代码重新编译类,而不指定任何"-target"类型选项.忽略此警告的后果是,对此类的反射操作将错误地指示它不是内部类.

我假设由于为"Instabug项目"启动的preDex任务,我们达到了4 GB的限制.

有没有人知道发生了什么?

编辑:gradle文件

root build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.2.3'
        classpath 'de.hannesstruss:godot:0.2'
        classpath 'com.github.ben-manes:gradle-versions-plugin:0.11.3'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

apply plugin: 'de.hannesstruss.godot'
apply plugin: 'com.github.ben-manes.versions'
apply …
Run Code Online (Sandbox Code Playgroud)

android circleci instabug

7
推荐指数
1
解决办法
628
查看次数

Instabug Proguard问题

我有一个问题,包括混淆项目中的instabug库(所有其他第三方库都可以).

我得到的错误是(我知道有关于此错误消息的其他问题,但我的问题只出现在instabug中,并且所提出的解决方案都不适合它).

错误:任务':app:packageRelease'的执行失败.

无法计算C:\ Projects\ProguardExample\app\build\intermediates\classes-proguard\release\classes.jar的哈希值

在尝试解决问题时,我在配置文件中添加了一些语句.

-dontwarn android.support.**
-keep class android.support.v7.** { *; }
-keep interface android.support.v7.** { *; }
-keep class com.google.android.gms.** { *; }
-dontwarn com.google.android.gms.**
-keep class com.instabug.** { *; }
Run Code Online (Sandbox Code Playgroud)

//这里我也尝试更改proguard-project.txt

和我的proguard-rules.pro

-dontwarn java.nio.file.Files
-dontwarn java.nio.file.Path
-dontwarn java.nio.file.OpenOption
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
Run Code Online (Sandbox Code Playgroud)

这是我的build.gradle的样子.

   buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.config
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
    compile 'com.android.support:appcompat-v7:23.0.1'
    //compile 'com.github.danieltwagner:android-async-logger:0.1.0@aar'
    compile 'com.instabug.library:instabugsupport:1+'
    // compile 'org.apache.commons:commons-collections4:4.0'
}
Run Code Online (Sandbox Code Playgroud)

如果你能指导我解决这个问题,我将非常感激.即使你不知道它的解决方案,但怀疑在哪个区域,我应该研究找到它,请与我分享:)

android proguard instabug

5
推荐指数
1
解决办法
969
查看次数

如何检测 Android 应用内的当前发布轨迹?(Google Play Console)

我计划在生产之前将我的应用发布到测试版。但我只想为测试版用户启用应用内错误报告。不是创建两个 APK(在 prod beta 中启用并在 prod 中禁用),我可以通过编程方式知道用户安装了应用程序的轨道,是否有任何可用的 API?

我想要达到的是,

if(app installed from beta track)
  enable in-app-bug reporting
else 
  disable in-app-bug reporting
Run Code Online (Sandbox Code Playgroud)

android instabug google-play-console

5
推荐指数
1
解决办法
125
查看次数