小编urg*_*as9的帖子

Android In App Billing 使受管理的产品免费

在我的应用程序中,我有几个有一定价格的托管产品。在发布周,我想免费制作其中一些。由于 Google Play 开发者控制台上的最低价格是 0.5 欧元,我不确定如何免费制作这些产品,同时将其 SKU 保存到 Google Play 服务器(就像默认购买流程中发生的那样)。我想要那个,因为用户可能会删除该应用程序并稍后重新安装。

这甚至可能吗?

android in-app-purchase in-app-billing google-play-services

5
推荐指数
0
解决办法
1795
查看次数

如何从Android支持库中锁定CollapsingToolbarLayout

我正在使用带有(通常)一个片段作为内容的Activity类。在活动中,我CollapsingToolbarLayout用作某些信息的标头,并且一切正常。但是在某些情况下(当附加了一些片段时),我不想显示该信息,也不想CollapsingToolbarLayout滚动打开。

我要实现的是锁定CollapsingToolbarLayout,防止它从片段中打开。我正在以编程方式将其折叠appBarLayout.setExpanded(false, true);

android android-fragments android-fragmentactivity android-collapsingtoolbarlayout

5
推荐指数
2
解决办法
3690
查看次数

使用 GSON 将 JSON 反序列化为 Enum

我的目标是将 JSON 文件或其一部分解析为 Java 中的 Enum 类。我可以轻松完成,但出于调试原因,我也想包含一个默认值。

public enum MyEnum {
    @SerializedName("texts")
    TEXTS,
    @SerializedName("buttons")
    BUTTONS,
    @SerializedName("inputs")
    INPUTS,
    DEFAULT
}
Run Code Online (Sandbox Code Playgroud)

因此,如果我尝试解析此 JSON(使用包装类):

{enum: "buttons"}
Run Code Online (Sandbox Code Playgroud)

我会得到MyEnum.BUTTONS,但如果我尝试解析:

{enum: "divider"}
Run Code Online (Sandbox Code Playgroud)

我仍然想知道它的价值。我想将所有值(例如“divider”、“line”、“color”...)DEFAULT映射到(维护映射到该DEFAULT值的字符串)。是否可以将价值“分隔符”保存到MyEnum.DEFAULT财产中?

java enums gson

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

如何使用satyan的Sugar ORM和@Table注释

我对SugarOrm for Android非常满意,但我遇到了一个问题.我正在使用GSON进行Json序列化,我想摆脱SugarRecordid属性.我知道我应该使用@Table注释,然后再使用从序列化中排除特定领域@Expose,但与@Table注释下课我不能用.save(),delete()......方法的对象上,因为它是延长的情况SugarRecord.我不知道如何使用@Table注释来持久化对象.

我发现这里文档非常有限.

android gson sugarorm

4
推荐指数
1
解决办法
1104
查看次数

获取 Formatter.format() String 中占位符的数量

在 Java 程序中,我使用的是Formatter.format()从服务器获取的带函数的字符串。我不能确定String要格式化的有占位符或有效数量的占位符。如果它String不符合预期,我想抛出一个异常 - 或者以某种方式记录它。

在这一点上,我不在乎什么类型的占位符是 ( String, Integer,...),我只想获得每个字符串的预期参数数量。

实现这一目标的最简单方法是什么?一种方法可能是使用正则表达式,但我在想是否有更方便的东西 - 例如内置函数。

这里有些例子:

Example String | number of placeholders:
%d of %d          | 2
This is my %s     | 1
A simple content. | 0
This is 100%      | 0
Hi! My name is %s and I have %d dogs and a %d cats. | 3
Run Code Online (Sandbox Code Playgroud)

编辑:如果提供的参数不足,Formatter.format() 会引发异常。有可能我得到一个没有占位符的字符串。在这种情况下,即使我提供参数(将被省略),也不会抛出异常(即使我想抛出一个),只会返回该字符串值。我需要向服务器报告错误。

java string string.format string-formatting formatter

4
推荐指数
1
解决办法
1614
查看次数

Android应用程序名称取决于buildType和口味Gradle

以下是我的gradle源代码的摘录。我想要实现的是在执行buildType.debug时在应用程序名称中添加后缀。我尝试了以下代码,但是变量是按顺序分配的,因为它们是在文件中写入的,而不是按任务顺序写入的。因此,在下面的示例中,buildVariant变量将始终等于Release。

{
def buildVariant = ""   
buildTypes {
    debug {
        manifestPlaceholders = [showDebug: 'true']
        buildVariant = " (DEBUG)"
    }
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        manifestPlaceholders = [showDebug: 'false']
        signingConfig signingConfigs.myConf
        buildVariant = " Release"
    }
}    
productFlavors {

    flavour1{
        resValue 'string', 'app_name', 'Flavour1'+buildVariant
    }
    flavour2{
        resValue 'string', 'app_name', 'Flavour2'+buildVariant
    }
    flavour3{
        resValue 'string', 'app_name', 'Flavour3'+buildVariant
    }
}
Run Code Online (Sandbox Code Playgroud)

groovy android build gradle

3
推荐指数
1
解决办法
748
查看次数