/ app / src / main / java / com / reandroid / arsc / ARSCLib.java
ARSCLib.java
 1  /*
 2    *  Copyright (C) 2022 github.com/REAndroid
 3    *
 4    *  Licensed under the Apache License, Version 2.0 (the "License");
 5    *  you may not use this file except in compliance with the License.
 6    *  You may obtain a copy of the License at
 7    *
 8    *      http://www.apache.org/licenses/LICENSE-2.0
 9    *
10    * Unless required by applicable law or agreed to in writing, software
11    * distributed under the License is distributed on an "AS IS" BASIS,
12    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13    * See the License for the specific language governing permissions and
14    * limitations under the License.
15    */
16  package com.reandroid.arsc;
17  
18  import java.io.InputStream;
19  import java.util.Properties;
20  
21  public class ARSCLib {
22      private static Properties sProperties;
23  
24      public static String getName(){
25          Properties properties=getProperties();
26          return properties.getProperty("lib.name", "ARSCLib");
27      }
28      public static String getVersion(){
29          Properties properties=getProperties();
30          return properties.getProperty("lib.version", "");
31      }
32      public static String getRepo(){
33          Properties properties=getProperties();
34          return properties.getProperty("lib.repo", "https://github.com/REAndroid");
35      }
36      public static String getDescription(){
37          Properties properties=getProperties();
38          return properties.getProperty("lib.description", "Failed to load properties");
39      }
40      
41      private static Properties getProperties(){
42          if(sProperties==null){
43              sProperties=loadProperties();
44          }
45          return sProperties;
46      }
47      private static Properties loadProperties(){
48          InputStream inputStream= ARSCLib.class.getResourceAsStream("/arsclib.properties");
49          Properties properties=new Properties();
50          try{
51              properties.load(inputStream);
52          }catch (Exception ignored){
53          }
54          return properties;
55      }
56  
57      public static final String NAME_arsc_lib_version = "arsc_lib_version";
58  }