itemstore est un service qui vous permet de mettre en œuvre facilement des achats intégrés sur les applications Android et iOS. Un traitement d'achat in-app problématique peut être réalisé avec un simple code source, et une gestion telle que l'affichage / non-affichage des articles de vente peut être facilement effectuée à partir de l'écran du magasin d'articles.
Le flux général d'utilisation est le suivant.
[STEP1] Paramètres sur le site du développeur [STEP2] Enregistrer les paramètres [STEP3] Mise en œuvre
Cette fois, je voudrais résumer "[STEP3] Implementation: Android Edition".
Android 4.0 (niveau d'API 14) ou version ultérieure
Ce didacticiel suppose le développement dans Android Studio.
Copiez le fichier jar du SDK téléchargé dans le dossier libs.
Si vous ne pouvez pas voir le dossier libs, modifiez l'affichage du projet dans la fenêtre d'outils en sélectionnant "Projet" dans le menu déroulant.
Après avoir déployé le SDK, effectuez une nouvelle génération en sélectionnant "Sync Project with Gradle Files" dans la barre d'outils ou [Build] -> [Clean Project] dans le menu.
Si la version d'API correspondante est 23 ou ultérieure, ajoutez ce qui suit sous android dans build.gradle dans le dossier de l'application.
Prise en charge requise pour la version 23 ou ultérieure de l'API
android {
〜
useLibrary 'org.apache.http.legacy'
〜
}
Si vous souhaitez publier la version avec proguard activé, ajoutez ce qui suit à proguard-rules.pro dans le dossier de l'application.
paramètres proguard
-dontwarn org.apache.http.**
-keep class net.app_c.sdk.** { *; }
Pour implémenter la fonction de facturation / fonction de notification push itemstore, implémentez l'interface OnAppCStartedListener dans la classe qui est l'activité principale.
Exemple)
Implémentation de l'interface OnAppCStartedListener
public class MainActivity extends Activity implements AppC.OnAppCStartedListener {
private AppC appc;
・ ・ ・
fonction de facturation itemstore
public class MainActivity extends Activity implements AppC.OnAppCStartedListener {
private AppC appc;
〜
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
〜
//initialisation d'itemsstore
appc = new AppC(this).on(AppC.API.ITEM_STORE).setMediaKey(_MEDIA_KEY).start();
〜
}
@Override
public void onAppCStarted(boolean flg) {
//Appelé après la fin du processus d'initialisation de l'itemstore
//Si vous souhaitez appeler la méthode associée à itemstore immédiatement après le démarrage de l'application,
//Veuillez effectuer divers traitements après l'appel de ce rappel.
}
〜
@Override
public void finish() {
//sortie itemstore
appc.finish();
super.finish();
}
〜
}
//méthode itemstore
//appel de vue itemstore
appc.ItemStore.openItemStore();
//Obtenez le nom de groupe de l'élément de facturation
String groupName = appc.ItemStore.getItem("ID de groupe").getName();
//Obtenez le nombre d'éléments de facturation
int itemCount = appc.ItemStore.getItemCount("ID de groupe");
//Augmenter ou diminuer le nombre d'éléments de facturation
//Si vous souhaitez réduire le nombre de possessions, entrez une valeur négative dans le deuxième argument
appc.ItemStore.addItemCount("ID de groupe", 1);
//Définissez la valeur spécifiée pour le nombre d'éléments de facturation
appc.ItemStore.setItemCount("ID de groupe", 10);
//Obtenir la clé de demande
String inquiryKey = appc.getInquiryKey();
Fonction de notification push
public class MainActivity extends Activity implements AppC.OnAppCStartedListener {
private AppC appc;
〜
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
〜
//initialisation d'itemsstore
appc = new AppC(this).on(AppC.API.PUSH).setMediaKey(_MEDIA_KEY).start();
/*
Par défaut, l'activité qui démarre lorsque vous appuyez sur la notification push est l'activité qui initialise le SDK appC.
Si vous souhaitez démarrer une activité lorsque vous appuyez sur la notification push, spécifiez la classe d'activité dans le deuxième argument de on.
L'icône affichée dans la notification push est ic par défaut_Le lanceur est spécifié
Si vous souhaitez modifier l'image de l'icône affichée par notification push, spécifiez une icône dans le troisième argument de on.
appc = new AppC(this).on(AppC.API.PUSH, MainActivity.class, R.drawable.ic_launcher)
.setMediaKey(_MEDIA_KEY)
.start();
*/
〜
}
@Override
public void onAppCStarted(boolean flg) {
//Appelé après la fin du processus d'initialisation de l'itemstore
//Si vous souhaitez appeler la méthode associée à itemstore immédiatement après le démarrage de l'application,
//Veuillez effectuer divers traitements après l'appel de ce rappel.
//Vous pouvez obtenir le texte de livraison (paramètre personnalisé) défini dans la livraison push lors du démarrage avec la notification push.
//Exemple) Journal.d("appc", "onAppCStarted:" + appc.Push.getParam());
}
@Override
protected void onNewIntent(final Intent intent) {
super.onNewIntent(intent);
//Vous pouvez obtenir des paramètres personnalisés lorsque l'application est dans un état de tâche et reçoit une notification push
//Vous pouvez obtenir le texte de livraison (paramètre personnalisé) défini dans la livraison push lors du démarrage avec la notification push.
//Exemple) Journal.d("appc", "onNewIntent:" + appc.Push.getParam());
}
@Override
public void finish() {
//sortie itemstore
appc.finish();
super.finish();
}
〜
}
//Méthode de notification push
//Obtenir le texte de livraison (paramètres personnalisés)
String customParameter = appc.Push.getParam();
//Obtenir la clé de demande
String inquiryKey = appc.getInquiryKey();
Veuillez l'utiliser au besoin. S'il y a d'autres éléments nécessaires, veuillez les ajouter selon le cas.
AndroidManifest.paramètres xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="[nom du paquet]">
<!-- require AppC -->
<uses-permission android:name="android.permission.INTERNET" />
<!-- require Push Start -->
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.VIBRATE" >
</uses-permission>
<uses-permission android:name="[nom du paquet].permission.C2D_MESSAGE" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<permission
android:name="[nom du paquet].permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<!-- require Push End -->
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- require Push Start -->
<receiver
android:name="com.google.android.gcm.GCMBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<action android:name="com.google.android.c2dm.intent.REGISTRATION" />
<category android:name="[nom du paquet]" />
</intent-filter>
</receiver>
<service android:name="net.app_c.sdk.AppCPushService" />
<!-- require Push End -->
</application>
</manifest>
Recommended Posts