블로그 이미지
Every unexpected event is a path to learning for you. blueasa

카테고리

분류 전체보기 (2853)
Unity3D (895)
Programming (479)
Server (33)
Unreal (4)
Gamebryo (56)
Tip & Tech (189)
협업 (64)
3DS Max (3)
Game (12)
Utility (142)
Etc (99)
Link (34)
Portfolio (19)
Subject (90)
iOS,OSX (53)
Android (16)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (3)
Memories (20)
Interest (38)
Thinking (38)
한글 (30)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (19)
Exercise (3)
나만의 맛집 (3)
냥이 (10)
육아 (16)
Total
Today
Yesterday

SQLite에서 데이터베이스에 입력 가능한 자료형은 다음과 같다.

 

 자료형

설명

예제 

 INTEGER

 부호를 갖는 정수형 데이터 

 -1234, -1, 0, 1234

 REAL(FLOAT, DOUBLE)

 부호를 갖는 부동소수점 데이터

 3.14, 123000000.0,

 1.23E8, 0.0032132, 1.2342E-4

 TEXT

 문자열 데이터

 'SQLite'

 'SQLite 자료형'

 BLOB

 바이너리 데이터

 (Binary Large Object)

 x'0101', x'0fac',

 x'0F0FAC', x'01234532'

 NULL

 값이 정의되지 않거나 존재하지 않음

 NULL

 

INTEGER는 부호가 있는 정수형 데이터를, REAL은 부호가 있는 부동소수점 데이터를 저장할 수 있다.

REAL은 다른 데이터베이스와의 SQL 구문 호환을 위해 'FLOAT', 'DOUBLE'로도 선언해서 사용 가능하다.

 

TEXT는 문자열 데이터를 저장하며, 문자열로 표현하려면 문자열을 따옴표('')나 쌍따옴표("")로 묶어야 한다.

 

BLOB은 바이너리 파일을 데이터베이스에 저장할 수 있드며, 일반적으로 이미지, 비디오, MP3와 같은 대형 멀티미디어 파일을 데이터베이스에 직접 저장하는 용도로 사용된다.

 

NULL은 '값이 정의되지 않았거나 존재하지 않음'을 의미하며, 0이나 빈 문자열('')과는 다르다.



출처: https://lovedb.tistory.com/348 [More haste, less speed]

 

참조: https://www.sqlite.org/draft/datatype3.html

반응형
Posted by blueasa
, |

[링크]

http://blog.naver.com/simtt/220851899973

 

[Unity] 유니티 Local Notification을 활용해보자

iOS의 경우 Unity 자체에서 로컬 알람 기능을 제공해준다. 안드로이드는 직접 구현할 수도 있지만, 그냥...

blog.naver.com

 

반응형
Posted by blueasa
, |

 

[링크]

https://lib.dasony.net/7

 

[NATIVE, ANDROID] Local Notification(로컬 알림) 유니티 플러그인

개요 유니티에서 네이티브 알림 기능을 iOS 만 제공하고 있습니다. 안드로이드에서 로컬 알림을 이용하려면 플러그인을 직접 제작하거나 다른 사람이 만들어 둔 플러그인을 사용해야 합니다. 이번에 다소니닷넷에..

lib.dasony.net

 

반응형
Posted by blueasa
, |

Unity Local Notification (For android)

This repository allows to send local notification from unity project on android devices.

Features

  • you can send local notification in android
  • you can schedule sending notification for some time in future
  • you can send notification having big picture style

Issues

  • not all android notification features are supported

Sample code

Publisher publisher = PublisherManager.Instance.CreatePublisher(channelId, channelName, channelDescription); // put your icon png file in Plugins/Android/UnityLocalNotification/res/drawable Notification notification = new Notification() .SmallIconName("test_icon") .Title("My notif title") .Message("This is a test notification message"); publisher.Publish(notification);

Screenshots

Unity asset

Unity local notification asset

Class diagram

class diagram

 

 

[출처] https://unitylist.com/p/g72/Unity-Local-Notification

 

Unity Local Notification

Send Android local notification from unity project source code

unitylist.com

 

반응형
Posted by blueasa
, |

 

[링크] http://auiproject.com/

 

에이유아이 프로젝트( AUIProject )

간트차트 기반 무료 프로젝트 관리 - 공유, 협업, 엑셀 저장 등 가능

www.auiproject.com

 

[출처] http://blog.naver.com/yummy-things/220826517085

 

간트차트 프로그램 추천 : 다운없이 바로 제작, 엑셀 저장 가능!

과제 중에 간트차트를 만드는 문항이 있었는데, 덕분에 인터넷을 열심히 뒤지다가 알게된 프로그램이예요 ...

blog.naver.com

 

반응형
Posted by blueasa
, |

New Office의 Word는 기본적으로 PDF 문서에 대한 열기와 편집이 가능해졌습니다. 추가적으로 대한민국에서 많이 사용되는 한글(HWP) 문서에 대한 도구를 금일 새벽 제공하게 되었습니다.

일전 New Office 런치 행사에서 해당 모듈을 소개한 후, 많은 분들께서 관련 다운로드를 여쭤오셨는데.. 조금 늦게 릴리즈된 점, 널리 양해해주시면 감사하겠습니다.

관련된 모듈은 http://www.microsoft.com/ko-kr/download/details.aspx?id=36772 에서 다운로드하실 수 있습니다.

 

 

[MS Word 2013 이하] http://www.microsoft.com/ko-kr/download/details.aspx?id=36772

[MS Word 2016] https://www.microsoft.com/ko-kr/download/details.aspx?id=49153

 

 

[출처] https://blogs.technet.microsoft.com/koalra/2013/02/12/office-word-hwp/

 

이제 Office의 Word에서 한글(HWP) 문서를 열고, 편집할 수 있습니다.

New Office의 Word는 기본적으로 PDF 문서에 대한 열기와 편집이 가능해졌습니다. 추가적으로 대한민국에서 많이 사용되는 한글(HWP) 문서에 대한 도구를 금일 새벽 제공하게 되었습니다. 일전 New Office 런치 행사에서 해당 모듈을 소개한 후, 많은 분들께서 관련 다운로드를 여쭤오셨는데.. 조금 늦게 릴리즈된 점, 널리 양해해주시면 감사하겠습니다. 관련된 모듈은 http://www.microsoft.com/ko-kr/download/det

blogs.technet.microsoft.com

 

반응형
Posted by blueasa
, |

[링크] https://m.blog.naver.com/86secret/220426431652

 

Gmail (지메일) 에 Youtube 동영상 바로 삽입하기 (임베딩 형태로)

Gmail (지메일) 에 Youtube 동영상 바로 삽입하기 (임베딩 형태로) 끊임없이 새로운 형태로바이어들에게 ...

blog.naver.com

 

반응형
Posted by blueasa
, |

[Link] https://jinreo.tistory.com/12

 

Unity 에서 Android Permission 삭제 관련

- READ_PHONE_STATE 한글로 보면 전화걸기 뭐 이런 식으로 설명하고 해당 권한을 받는다. (make and manage phone call) 유니티상에서 SystemInfo.deviceUniqueIdentifier를 사용하면 자동으로 추가되는데 해당 코..

jinreo.tistory.com

 

반응형
Posted by blueasa
, |

READ_PHONE_STATE Permission isn’t in my Manifest or Plugins!

Unity automatically adds the READ_PHONE_STATE permission into builds when either:

  • Your scripts contain code which require the permission.
  • The target SDK version isn’t set (or set below 4) which causes the manifest merger to assume the SDK version is lower than 4 and the system will implicitly grant the READ_PHONE_STATE permission to the app. (in later versions of Unity 5 and Unity 2017 the target SDK version is now set in the editor making managing it much easier)
  • You have a plugin in your project which has its own manifest file requesting the permission (the manifest can be contained within your jar or aar files, they’re not always simply in your project) – Note that if a plugin is requesting a permission then it’s probably required and may cause issues if removed, check the plugin documentation if you’re unsure!

Code which causes Unity to automatically add the permission

In the case of your scripts containing code which need the permission. Unity automatically adds the permission when using functions which require it.

Some SystemInfo properties such as SystemInfo.deviceUniqueIdentifier require the READ_PHONE_STATE permission so referencing it in a script will force Unity to add it.

As an alternative to SystemInfo.deviceUniqueIdentifier when needing a unique device identifier and it’s not important to keep it the same between wiping save data. Consider generating a unique value based on System.DateTime.Now.Ticks and storing in the playerprefs instead.



Why am I asked to allow/deny the permission at app launch?

Starting with Android 6.0 the user was given more control over permissions apps were allowed to use at runtime; rather than a blanket list of confusing permission being included with the app at installation. Permissions which are prompted for the user to allow are classified as dangerous permissions as they can allow the app to access sensitive data. (in this case READ_PHONE_STATE can allow reading of the phone number, call statuses or list phone accounts registered on the device)

If you want to manually control when the permissions are requested at runtime rather than all dangerous permissions just being prompted at startup then you can add:
<meta-data android:name=”unityplayer.SkipPermissionsDialog” android:value=”true” />
Between the <application> tags of your manifest file.

With the permission dialog skipped all dangerous permissions will remain defaulted as denied! But this allows you to request permissions manually when you need them, rather than all at once at app launch. (However note that you’ll either need to write a Java plugin yourself to control this or find an already built plugin from the store such as Android Buddy which fits this exact purpose!)

Learn more about the READ_PHONE_STATE android permission!

You can read more about the READ_PHONE_STATE permission on the android developer site at https://developer.android.com/reference/android/Manifest.permission.html#READ_PHONE_STATE

 

[출처]

https://www.unity3dtips.com/read_phone_state-permission-android/

 

Remove READ_PHONE_STATE Permission Unity Android - Unity3d Tips

How to remove the READ_PHONE_STATE permission in your Unity Android apps and find the cause! Alternatively prompt the permission later than app startup!

www.unity3dtips.com

 

반응형
Posted by blueasa
, |

Easy Way

I think this easier approach applies if your Unity project is being built with gradle. If it isn't, here is one more reason to upgrade.

Also, a big shout-out to an article called, Hey, Where Did These Permissions Come From?)

  1. Build Your Project
  2. Open the file /path/to/my/project/Temp/gradleOut/build/outputs/logs/manifest-merger-release-report.txt
  3. Profit!
  4. Search the file for the name of your permission, and it'll show you where it came from.

Here is part of the file, where I'm looking for the WRITE_EXTERNAL_STORAGE permission.

uses-permission#android.permission.WRITE_EXTERNAL_STORAGE ADDED from /Users/clinton/Projects/<<ProjectName>>/Temp/gradleOut/src/main/AndroidManifest.xml:7:3-79 MERGED from [gradleOut:IronSource:unspecified] /Users/clinton/Projects/<<ProjectName>>/Temp/gradleOut/IronSource/build/intermediates/bundles/default/AndroidManifest.xml:13:5-81 android:name ADDED from /Users/clinton/Projects/<<ProjectName>>/Temp/gradleOut/src/main/AndroidManifest.xml:7:20-76

Hard Way

There are three ways permissions get added to your project.

  1. They are specified in an Android Manifest file.
  2. They are specified in library (a .aar file).
  3. Unity adds the permission when you use a certain feature. (Added)

My examples use command-line tools on a Mac. I don't know Windows equivalents, but it is possible to find and run unix tools there (using the linux subsystem for windows 10, cygwin, custom binaries, etc.)

1. Find all permissions used in (uncompressed) Android Manifests.

cd /path/to/my/project/Assets grep -r "uses-permission" --include "AndroidManifest.xml" .

This will find all files named AndroidManifest in the current folder (.) or any of its subfolders (-rtells it to search recursively) and spit out any line with the words 'uses-permission'.

In my current project, I get output something like this:

./Plugins/Android/AndroidManifest.xml: <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> ./Plugins/Android/AndroidManifest.xml: <uses-permission android:name="android.permission.INTERNET" /> ./Plugins/Android/AndroidManifest.xml: <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> ./Plugins/Android/AndroidManifest.xml: <uses-permission ./Plugins/Android/IronSource/AndroidManifest.xml: <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> ./Plugins/Android/IronSource/AndroidManifest.xml: <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

2. Find the permissions required in Android Libraries

Your project likely contains android libraries (.aar files) and java archives (.jar files). Some android libraries contain an android manifest and specify permissions needed to use the library. (I don't think .jar files actually do this, but .aar files absolutely do). Both .aar and .jar files are .zip files, with a different extension and with specific metadata in specific places.

Find them by running:

find . -iname "*.?ar" -print -exec zipgrep "uses-permission" "{}" "AndroidManifest.xml" ";" 2> /dev/null

Here's what this does. It finds any file (in the current folder (.) and its subfolders) has an extension of (something) a r, thus .jar, or .aar (-name "*.?ar"). It outputs the archive's file name (-print). It then runs zipgrep (-exec). Zipgrep is told to search through any files in the archive ({}) named "AndroidManifest.xml", and output any line with the words "uses-permission". We then pipe the errors to the bit bucket (2> /dev/null) so we don't see lots of errors about archives that don't have android manifests in them.

An example output looks like this:

./OneSignal/Platforms/Android/onesignal-unity.aar AndroidManifest.xml: <uses-permission android:name="android.permission.INTERNET" /> AndroidManifest.xml: <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" /> AndroidManifest.xml: <uses-permission android:name="android.permission.WAKE_LOCK" /> AndroidManifest.xml: <uses-permission android:name="android.permission.VIBRATE" /> ... ./Plugins/Android/android.arch.core.common-1.1.0.jar ./Plugins/Android/android.arch.core.runtime-1.1.0.aar ./Plugins/Android/android.arch.lifecycle.common-1.1.0.jar ... ./Plugins/Android/com.google.android.gms.play-services-gcm-11.8.0.aar AndroidManifest.xml: <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" /> AndroidManifest.xml: <uses-permission android:name="android.permission.INTERNET" /> ./Plugins/Android/com.google.android.gms.play-services-gcm-license-11.8.0.aar ./Plugins/Android/com.google.android.gms.play-services-iid-11.8.0.aar AndroidManifest.xml: <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" /> AndroidManifest.xml: <uses-permission android:name="android.permission.INTERNET" /> ./Plugins/Android/com.google.android.gms.play-services-iid-license-11.8.0.aar ...

The filenames all start with periods. I can thus see, for example, that the onesignal-unity.aar sets several permissions, several .jar files were searched with no permissions inside them, and some of the play services libraries specify permissions.

If I needed to change a library, I could rename the .aar to .zip, extract it, edit it, compress it, and rename it back. (It isn't necessarily wise to change the permissions inside a library, but possible.)

3. Unity Adds the Permission

I didn't have anything to add on this; as said above, if you use the Microphone API, Unity will add a permission for you so your app will work.

However, I've since realized that you can do the following:

  • bring up the Build Settings for Android
  • tick the 'Export Project' box
  • Export the project, noting the location
  • go to /my/project/export/src/main/AndroidManifest.xml. This is what Unity emits for the android manifest (before google's tools do all the merging).
  • compare it (using your favourite diff tool) to Assets/plugins/Android/AndroidManifest.xml; the differences come from Unity.

 

[출처]

https://stackoverflow.com/questions/40931058/how-to-find-source-of-a-permission-in-unity-android

 

How to find source of a permission in Unity Android

Note: This question is specific to Unity3D I have a very clean android manifest file in Unity project under Plugins/Android/ folder with no tag at all. I believe that some

stackoverflow.com

 

반응형
Posted by blueasa
, |