2013-08-12 43 views
0

我需要創建一個應用程序,我必須顯示當前訪問該應用程序的用戶總數。 (類似於網頁中的網頁統計,我們可以顯示「Total Visitor:1000」)。在Android應用程序中跟蹤用戶數

當任何用戶打開應用程序(橫跨地球)不久,他應該看到總人次截至目前。

是否有解決方案存在此需求?

感謝任何幫助/建議。謝謝

- 更多信息- 有網站http://www.web-stat.net/這是它的網頁。需要類似的Android應用程序。

你可以讀入
+0

你有什麼試過的?您可以使用Google Analytics記錄計數,並使用其API獲取結果,但這不是實時的。 – Raptor

+0

你需要有一個網絡方法,這將被稱爲計數器只增加一次。 –

+0

非常感謝Anuj,但我需要一種方法,每次用戶打開應用程序時訪問次數應該增加。 –

回答

1

兩個例子:

http://www.flurry.com

http://www.google.com/analytics/

其提供的API,這些都被DataReporting服務,例如導出數據作爲JSON。主要目標是您的應用程序將使用情況統計信息發送到外部服務器(您可以在其中查看數據)。 此外,您還可以連接到這些服務器並在設備上檢索數據。

更新 - 局部存儲器

如果你只是想在設備上的本地計數器,顯示他是如何經常訪問應用程序,請SharedPreferences用戶。 SharedPreferences使您可以將數據存儲在設備上,並在打開或關閉應用程序時再次檢索該數據。

更新 - GLOBAL - 數據庫

如果你想只是一個 「全球性的」 計數器。我們建議您創建一個SQL數據庫,用於存儲當前訪問者數量,並在用戶每次訪問並獲取當前應用啓動時的計數以顯示它時增加該數據。 如果你想跟蹤目前使用的應用程序您的應用程序的不同的用戶,你可以爲每一個用戶提供相同的ID,並將其存儲在SQL數據庫,當用戶第一次打開應用程序,並增加計數器。 因此,你當然也需要一個表格存儲id。 當用戶關閉應用程序時,您需要再次連接到數據庫,並從表格中刪除其ID並將計數器遞減。

這可能是獲得一個唯一的ID爲每個用戶的一種方式:

public class Installation { 
    private static String sID = null; 
    private static final String INSTALLATION = "INSTALLATION"; 

    public synchronized static String id(Context context) { 
     if (sID == null) { 
      File installation = new File(context.getFilesDir(), INSTALLATION); 
      try { 
       if (!installation.exists()) 
        writeInstallationFile(installation); 
       sID = readInstallationFile(installation); 
      } catch (Exception e) { 
       throw new RuntimeException(e); 
      } 
     } 
     return sID; 
    } 

    private static String readInstallationFile(File installation) throws IOException { 
     RandomAccessFile f = new RandomAccessFile(installation, "r"); 
     byte[] bytes = new byte[(int) f.length()]; 
     f.readFully(bytes); 
     f.close(); 
     return new String(bytes); 
    } 

    private static void writeInstallationFile(File installation) throws IOException { 
     FileOutputStream out = new FileOutputStream(installation); 
     String id = UUID.randomUUID().toString(); 
     out.write(id.getBytes()); 
     out.close(); 
    } 
} 

從這裏摘自:Android unique id

+0

僅鏈接答案不足,請提供更多詳細信息。 – Raptor

+0

@Phil,請參閱我對Anuj的評論.. –

+0

因此,您只是在設備上本地增加本地設備嗎? –

0
  1. 擴展Application類。
  2. 創建可增加和減少用戶數量的Web方法。
  3. 使用onCreate()方法報告活動用戶(增加數量)。
  4. 使用onTerminate()方法報告非活動用戶(減少數量)。
  5. 創建獲取用戶數量的方法。
+0

你有任何鏈接/示例顯示這種方法嗎? –

+0

你需要選擇像ASP.NET,PHP等服務器端技術... – NickF

+0

在Android應用程序? –