shareinstall之AndroidSDK集成

提示:以下代碼(配置)由shareinstall根據(jù)當前應(yīng)用動態(tài)生成,開發(fā)者可直接使用;按照以下步驟指引,10分鐘即可完成Android SDK集成。

創(chuàng)新互聯(lián)主營斗門網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,重慶App定制開發(fā),斗門h5重慶小程序開發(fā)公司搭建,斗門網(wǎng)站營銷推廣歡迎斗門等地區(qū)企業(yè)咨詢

一、導(dǎo)入SDK

Android SDK 下載 v1.0.6 http://api.shareinstall.com/download/1.0.6/android

Android DEMO 下載 v1.0.6 http://api.shareinstall.com/download/1.0.6/androiddemo

從下載的ShareInstallSdk.zip文件中,將aar文件拷貝到項目的libs文件夾中,并導(dǎo)入

dependencies {
compile(name: 'ShareInstall_1.0.5', ext: 'aar')
}

(注:導(dǎo)入aar需檢查build文件中是否已經(jīng)加入以下代碼,否則會報錯)

repositories {
flatDir {
dirs 'libs'
}
}

二、基礎(chǔ)配置

在AndroidMainfest.xml中添加權(quán)限聲明。

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

在AndroidMainfest.xml中的application標簽中添加分配給你應(yīng)用的Appkey

<meta-data
android:name="com.shareinstall.APP_KEY"
android:value="K2BK7B6HH7F7R2"/>

在自定義Application中調(diào)用ShareInstall.getInstance().init(context)方法完成SDK初始化,初始化前先判斷當前進程是否是應(yīng)用的主進程。

public class MyApp extends Application {

@Override
public void onCreate() {
    super.onCreate();
    if (isMainProcess()) {
        ShareInstall.getInstance().init(getApplicationContext());
    }
}

/**
    * 判斷當前進程是否是應(yīng)用的主進程
    *
    * @return
    */
public boolean isMainProcess() {
    int pid = android.os.Process.myPid();
    ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
    for (ActivityManager.RunningAppProcessInfo appProcess : activityManager.getRunningAppProcesses()) {
        if (appProcess.pid == pid) {
            return getApplicationInfo().packageName.equals(appProcess.processName);
        }
    }
    return false;
}

}

如果使用ShareInstall控制中心提供的注冊統(tǒng)計功能,可調(diào)用方法ShareInstall.getInstance().reportRegister(); 注意該方法要在ShareInstall.getInstance().init (context)方法之后調(diào)用,否則會拋異常。

// 調(diào)用注冊接口
ShareInstall.getInstance().reportRegister();

在AndroidMainfest.xml中的application標簽中添加android:name=".MyApplication"指定自定義的Application類,以便程序啟動的時候初始化自定義Application類,而不是系統(tǒng)默認的Application類。

<applicationandroid:name=".MyApplication"
android:allowBackup="false"
android:icon="@mipmap/ic_launcher"
br/>android:name=".MyApplication"
android:allowBackup="false"
android:icon="@mipmap/ic_launcher"
android:theme="@style/AppTheme">
br/>android:supportsRtl="true"
android:theme="@style/AppTheme">

三、一鍵跳轉(zhuǎn)

在AndroidMainfest的喚醒頁面activity標簽中添加intent-filter(一般為MainActivity),配置scheme,用于瀏覽器中拉起。

<activity
android:name=".MainActivity"
android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="afap0343" />
</intent-filter>
</activity>

注:如果喚醒頁面和啟動頁是同一Activity,則AndroidMaifest.xml的配置如下。

<activity
android:name=".MainActivity"
android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="afap0343"/>
</intent-filter>
</activity>

個性化安裝和一鍵喚醒都調(diào)用同一個方法ShareInstall.getInstance().getInfo()獲取相關(guān)信息,第一個參數(shù)為Intent(注:Intent可傳null,但在配置了scheme喚醒的頁面必須傳,否則拿不到傳遞過來的參數(shù)),第二個參數(shù)為信息回調(diào)監(jiān)聽

四、個性化安裝

在APP需要個性化安裝參數(shù)時(由web網(wǎng)頁中傳遞過來的,如邀請碼、游戲房間號等 自定義參數(shù)),調(diào)用以下方法,在回調(diào)中獲取參數(shù)。

ShareInstall.getInstance().getInfo(intent, new AppGetInfoListener() {@Override
br/>@Override
Log.d("ShareInstall", "info = " + info);
}
});

五、喚醒頁面獲取信息

public class WakeUpActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_wake_up);
    // 獲取喚醒參數(shù)
    ShareInstall.getInstance().getInfo(getIntent(), listener);
}

@Override
protected void onNewIntent(Intent intent) {
    super.onNewIntent(intent);
    // 此處要調(diào)用,否則app在后臺運行時,會無法截獲
    ShareInstall.getInstance().getInfo(intent, listener);
}

private AppGetInfoListener listener = new AppGetInfoListener() {
    @Override
    public void onGetInfoFinish(String info) {
        Log.d("ShareInstall", "info = " + info);
    }
};

當前題目:shareinstall之AndroidSDK集成
網(wǎng)頁URL:http://muchs.cn/article34/ijcppe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計公司、軟件開發(fā)網(wǎng)站營銷、企業(yè)建站商城網(wǎng)站、Google

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計公司