Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android应用内计费一般问题_Android_Billing - Fatal编程技术网

Android应用内计费一般问题

Android应用内计费一般问题,android,billing,Android,Billing,我知道应用内计费在安卓系统中是新的,我很想使用它,但版本要求让我三思是否值得。我将非常感谢那些实施或处理过应用内计费的人提供的任何详细信息 我仍然有10%的1.5个用户。应用内计费至少需要1.6才能正常工作。这是否意味着1.5用户将立即崩溃?如果没有,它在什么时候失败?我不想写一堆乱七八糟的代码来与1.5版用户兼容 如果用户重新安装了应用程序,是否会记住他们购买的应用程序 如果您没有所需的市场版本,它会在什么时候失败 谢谢。关于版本支持,您需要编写一些额外的代码来检测设备操作系统版本(请参阅an

我知道应用内计费在安卓系统中是新的,我很想使用它,但版本要求让我三思是否值得。我将非常感谢那些实施或处理过应用内计费的人提供的任何详细信息

  • 我仍然有10%的1.5个用户。应用内计费至少需要1.6才能正常工作。这是否意味着1.5用户将立即崩溃?如果没有,它在什么时候失败?我不想写一堆乱七八糟的代码来与1.5版用户兼容
  • 如果用户重新安装了应用程序,是否会记住他们购买的应用程序
  • 如果您没有所需的市场版本,它会在什么时候失败

  • 谢谢。

    关于版本支持,您需要编写一些额外的代码来检测设备操作系统版本(请参阅android.OS.Build.version),因此请确保它将在1.5设备上运行。我强烈建议将该代码隔离在它自己的类中,并且只在版本检查之后实例化该类。这样,您的代码保持干净(而不是“hacky”),并且不会意外地从类字段引用1.6+类。在我的代码中,我有如下版本测试类:

    public class Android8 {
        private static final String TAG = "Android8";
    
        // public test variables
        public static final boolean IS_V8;
        public static final boolean AT_LEAST_V8;
    
        private static final Object pimpl;
    
        static {
            int sdk_int = 0;
            try {
                Field field = Build.VERSION.class.getField( "SDK" );
                String sdk_str = (String)field.get( null );
                sdk_int = Integer.parseInt( sdk_str );
            } catch( Throwable e ) {
            }
    
            IS_V8 = (sdk_int==8);
            AT_LEAST_V8 = (sdk_int>=8);
    
            if( AT_LEAST_V8 ) {
                pimpl = new Implementation();
            } else {
                pimpl = null;
            }
        }
    
        // Version safe interface
        public static void Camera_setDisplayOrientation( Camera camera, int degrees ) {
            if( AT_LEAST_V8 )
                ((Implementation)pimpl).Camera_setDisplayOrientation( camera, degrees );
        }
    
        // Will cause a verify error if loaded in a pre Android8 environment
        private static final class Implementation {
            public static void Camera_setDisplayOrientation( Camera camera, int degrees ) {
                camera.setDisplayOrientation( degrees );
            }
        }
    }
    

    问题2:如果项目是非托管的,则为否。是的,如果是的话。 这就是管理项目的重点,让谷歌的服务器管理(记住)这种情况下购买的项目

    (如果您正在销售游戏级别或应用程序功能等项目,“按用户帐户管理”购买类型很有用。这些项目不是暂时性的,通常需要在用户重新安装应用程序、擦除设备上的数据或在新设备上安装应用程序时恢复。)

    发件人: