Ejemplo n.º 1
0
        public void UpdateManifest()
        {
            if (StoreSettings.GPlayBP)
            {
                SoomlaManifestTools.SetPermission("com.android.vending.BILLING");
                SoomlaManifestTools.AddActivity("com.soomla.store.billing.google.GooglePlayIabService$IabActivity",
                                                new Dictionary <string, string>()
                {
                    { "theme", "@android:style/Theme.Translucent.NoTitleBar.Fullscreen" }
                });
                SoomlaManifestTools.AddMetaDataTag("billing.service", "google.GooglePlayIabService");
            }
            else
            {
                // removing BILLING permission
                SoomlaManifestTools.RemovePermission("com.android.vending.BILLING");
                // removing Iab Activity
                SoomlaManifestTools.RemoveActivity("com.soomla.store.billing.google.GooglePlayIabService$IabActivity");
            }

            if (StoreSettings.AmazonBP)
            {
                XmlElement receiverElement = SoomlaManifestTools.AppendApplicationElement("receiver", "com.amazon.inapp.purchasing.ResponseReceiver", null);
                receiverElement.InnerText = "\n    ";
                XmlElement intentElement = SoomlaManifestTools.AppendElementIfMissing("intent-filter", null, null, receiverElement);
                XmlElement actionElement = SoomlaManifestTools.AppendElementIfMissing("action", "com.amazon.inapp.purchasing.NOTIFY",
                                                                                      new Dictionary <string, string>()
                {
                    { "permission", "com.amazon.inapp.purchasing.Permission.NOTIFY" }
                },
                                                                                      intentElement);
                actionElement.InnerText = "\n    ";
                SoomlaManifestTools.AddMetaDataTag("billing.service", "amazon.AmazonIabService");
            }
            else
            {
                SoomlaManifestTools.RemoveApplicationElement("receiver", "com.amazon.inapp.purchasing.ResponseReceiver");
            }
        }
        private void AddGoogleToManifest()
        {
            //google+ permissions
            SoomlaManifestTools.SetPermission("android.permission.INTERNET");
            SoomlaManifestTools.SetPermission("android.permission.GET_ACCOUNTS");
            SoomlaManifestTools.SetPermission("android.permission.USE_CREDENTIALS");
            SoomlaManifestTools.SetPermission("android.permission.WRITE_EXTERNAL_STORAGE");

            //google+ activity
            SoomlaManifestTools.AddActivity("com.soomla.profile.social.google.SoomlaGooglePlus$SoomlaGooglePlusActivity",
                                            new Dictionary <string, string>()
            {
                { "theme", "@android:style/Theme.Translucent.NoTitleBar.Fullscreen" }
            });

            //google play services version
            SoomlaManifestTools.AddMetaDataTag("com.google.android.gms.version", "@integer/google_play_services_version");
            if (ProfileSettings.GPEnableGS)
            {
                string GPAppId = ProfileSettings.GPClientId.Split(new char[] { '-' })[0];
                SoomlaManifestTools.AddMetaDataTag("com.google.android.gms.games.APP_ID", "\\ " + GPAppId);
            }
        }
        public void HandleGoogleManifest()
        {
            bool?enabled = false;
            bool value   = ProfileSettings.IntegrationState.TryGetValue("google", out enabled);

            //check if google+ is enabled in settings
            if (value && (enabled != null) && enabled.Value)
            {
                //google+ permissions
                SoomlaManifestTools.SetPermission("android.permission.INTERNET");
                SoomlaManifestTools.SetPermission("android.permission.GET_ACCOUNTS");
                SoomlaManifestTools.SetPermission("android.permission.USE_CREDENTIALS");
                SoomlaManifestTools.SetPermission("android.permission.WRITE_EXTERNAL_STORAGE");

                //google+ activity
                SoomlaManifestTools.AddActivity("com.soomla.profile.social.google.SoomlaGooglePlus$SoomlaGooglePlusActivity",
                                                new Dictionary <string, string>()
                {
                    { "theme", "@android:style/Theme.Translucent.NoTitleBar.Fullscreen" }
                });

                //google play services version
                SoomlaManifestTools.AddMetaDataTag("com.google.android.gms.version", "@integer/google_play_services_version");
            }
            else
            {
                // NOTE: We don't remove permissions or general purpose meta-data tags b/c other modules might need them.
                //      This is why they are commented out

//				SoomlaManifestTools.RemovePermission("android.permission.INTERNET");
//				SoomlaManifestTools.RemovePermission("android.permission.GET_ACCOUNTS");
//				SoomlaManifestTools.RemovePermission("android.permission.USE_CREDENTIALS");
                SoomlaManifestTools.RemoveActivity("com.soomla.profile.social.google.SoomlaGooglePlus$SoomlaGooglePlusActivity");
//				SoomlaManifestTools.RemoveApplicationElement("meta-data", "com.google.android.gms.version");
            }
        }