コード例 #1
0
    public IEnumerator FileACLTest()
    {
        byte[]  data = System.Text.Encoding.UTF8.GetBytes("acl test");
        NCMBACL acl  = new NCMBACL();

        acl.PublicReadAccess = true;
        NCMBFile file = new NCMBFile("ACL.txt", data, acl);

        file.SaveAsync((NCMBException error) => {
            NCMBTestSettings.CallbackFlag = true;
        });

        yield return(NCMBTestSettings.AwaitAsync());

        NCMBTestSettings.CallbackFlag = false;

        NCMBQuery <NCMBFile> query = NCMBFile.GetQuery();

        query.WhereEqualTo("fileName", "ACL.txt");
        query.FindAsync((List <NCMBFile> objList, NCMBException error) => {
            Assert.Null(error);
            NCMBFile getFile = objList [0];
            Assert.True(getFile.ACL.PublicReadAccess);
            Assert.False(getFile.ACL.PublicWriteAccess);
            NCMBTestSettings.CallbackFlag = true;
        });

        yield return(NCMBTestSettings.AwaitAsync());

        Assert.True(NCMBTestSettings.CallbackFlag);
    }
コード例 #2
0
    public IEnumerator FileDeleteTest()
    {
        byte[]   data = System.Text.Encoding.UTF8.GetBytes("delete test");
        NCMBFile file = new NCMBFile("delete.txt", data);

        file.SaveAsync((NCMBException error) => {
            Assert.Null(error);
            NCMBTestSettings.CallbackFlag = true;
        });
        yield return(NCMBTestSettings.AwaitAsync());

        NCMBTestSettings.CallbackFlag = false;
        Assert.NotNull(file.CreateDate);

        file.DeleteAsync((NCMBException error) => {
            Assert.Null(error);
            NCMBTestSettings.CallbackFlag = true;
        });
        yield return(NCMBTestSettings.AwaitAsync());

        NCMBTestSettings.CallbackFlag = false;

        NCMBQuery <NCMBFile> query = NCMBFile.GetQuery();

        query.WhereEqualTo("fileName", "delete.txt");
        query.FindAsync((List <NCMBFile> objList, NCMBException error) => {
            Assert.Null(error);
            Assert.AreEqual(0, objList.Count);
            NCMBTestSettings.CallbackFlag = true;
        });
        yield return(NCMBTestSettings.AwaitAsync());

        Assert.True(NCMBTestSettings.CallbackFlag);
    }
コード例 #3
0
    public void LoadOneImage(int index, Image go)
    {
        NCMBQuery <NCMBFile> query = NCMBFile.GetQuery();

        query.Skip  = index;
        query.Limit = 1;
        query.OrderByDescending("createDate");
        query.FindAsync((List <NCMBFile> objList, NCMBException error) => {
            if (error != null)
            {
                // 検索失敗
            }
            else
            {
                // 検索成功
                foreach (NCMBFile file in objList)
                {
                    file.FetchAsync((byte[] fileData, NCMBException e) => {
                        if (e != null)
                        {
                            // 取得失敗
                        }
                        else
                        {
                            // 取得成功
                            SaveBytes(fileData, go);
                        }
                    });
                }
            }
        });
    }
コード例 #4
0
    public void FileQueryTest()
    {
        byte[]   data = System.Text.Encoding.UTF8.GetBytes("hello");
        NCMBFile file = new NCMBFile("test.txt", data);

        file.SaveAsync((NCMBException error) => {
            Assert.Null(error);
        });
        NCMBTestSettings.AwaitAsync();
        Assert.NotNull(file.CreateDate);

        NCMBQuery <NCMBFile> query = NCMBFile.GetQuery();

        query.FindAsync((List <NCMBFile> objList, NCMBException error) => {
            Assert.LessOrEqual(1, objList.Count);
            Assert.Null(error);
            NCMBTestSettings.CallbackFlag = true;
        });
        NCMBTestSettings.AwaitAsync();
        Assert.True(NCMBTestSettings.CallbackFlag);
    }
コード例 #5
0
    //詳細 Buttonが押された時
    //num → OrderIDと同じ。内部的に処理するために、このセクションのみで使う一時変数。
    public void OnDetailButtonPressed(int num, string objectID, int detailPanelPos = 0)
    {
        Debug.Log(num);

        Debug.Log(s6[num]);

        if (detailPanelPos == 0)//検索画面の場合
        {
            detailPanel = DetailPanel;
        }
        else if (detailPanelPos == 1)//出品リスト画面の場合
        {
            detailPanel = DetailPanel_In_MyList;
        }

        //詳細textを代入
        this.detailPanel.transform.GetChild(0).transform.GetChild(1)
        .transform.GetChild(0).transform.GetChild(2)
        .transform.GetChild(0)
        .gameObject.GetComponent <InputField>().text = s6[num];


        //SSの文字をリセット
        this.detailPanel.transform.GetChild(0).transform.GetChild(1)
        .transform.GetChild(0).transform.GetChild(1)
        .transform.GetChild(0).transform.GetChild(0)
        .gameObject.SetActive(true);

        //SSをリセット
        this.detailPanel.transform.GetChild(0).transform.GetChild(1)
        .transform.GetChild(0).transform.GetChild(1)
        .transform.GetChild(0)
        .gameObject.GetComponent <Image>().sprite = null;


        //SSを代入
        //1.SSを取得 2.SS(byte[])をtexture→Spriteに変換
        NCMBQuery <NCMBFile> query = NCMBFile.GetQuery();

        query.WhereEqualTo("fileName", objectID);
        query.FindAsync((List <NCMBFile> objList, NCMBException error) =>
        {
            if (error != null)
            {
                //検索失敗
            }
            else
            {
                //検索成功
                foreach (NCMBFile file in objList)
                {
                    file.FetchAsync((byte[] fileData, NCMBException e) =>
                    {
                        if (e != null)
                        {
                            //取得失敗
                        }
                        else
                        {
                            //取得成功
                            //1.SSの文字を消す。
                            this.detailPanel.transform.GetChild(0).transform.GetChild(1)
                            .transform.GetChild(0).transform.GetChild(1)
                            .transform.GetChild(0).transform.GetChild(0)
                            .gameObject.SetActive(false);

                            //2.SSを代入する。
                            Texture2D texture = new Texture2D(100, 100);
                            texture.LoadImage(fileData);
                            Sprite sprite = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), Vector2.zero);
                            this.detailPanel.transform.GetChild(0).transform.GetChild(1)
                            .transform.GetChild(0).transform.GetChild(1)
                            .transform.GetChild(0)
                            .gameObject.GetComponent <Image>().sprite = sprite;
                            Resources.UnloadUnusedAssets();
                        }
                    });
                }
            }
        });
        //--SS処理はここまで。

        //ユーザーのLobi URLを代入
        this.detailPanel.transform.GetChild(0).transform.GetChild(1)
        .transform.GetChild(0).transform.GetChild(3)
        .transform.GetChild(0)
        .gameObject.GetComponent <InputField>().text = s7[num];

        //最後に詳細パネルをオンにする
        this.detailPanel.gameObject.SetActive(true);
    }