2.7
2022-06-21
withAppData
[version 2.7]
Update iOS version.
change 8.0 to 9.0.
Status bar for iOS15
internal processing of the program has been changed.
Added IDFA confirmation dialog display processing
The confirmation dialog is displayed only once due to the AdMob tracking process.
If you want to track activity or change permissions in the "Privacy" settings
It seems that you can make changes by selecting Settings> Privacy> Tracking.
IDFA can set permission changes for each app.
please choose "Allow" button or "Ask App Note toTrack" button.
(1) "Allow" button:
Show recommended ads.
(2) "Ask App Note toTrack" button:
Display ads that users are not interested in.
* In any case, the advertisement will be displayed.
[Notes to development users]
Getting the height of the iOS status bar (iOS 15 or later)
[Code implementation example]
※Objective-C
CGFloat height = 0.0f;
NSSet *scenes = [[UIApplication sharedApplication] connectedScenes];
for (UIScene *scene in scenes)
{
if ([scene isKindOfClass:[UIWindowScene class]])
{
UIWindowScene *windowScene = (UIWindowScene*)scene;
height = windowScene.statusBarManager.statusBarFrame.size.height;
break;
}
}
IDFA code implementation
About the implementation of IDFA (tracking related)
Add two frameworks.
(1)AdSupport.framework
(2)AppTrackingTransparency.framework
Until now, I think it was implemented at the following timing.
(1)AppDelegate
(2)SceneDelegate
(3)viewDidLoad
However, it seems that it became a regular procedure to execute IDFA after implementing the advertisement.
From iOS15, the IDFA message dialog will not be displayed if it is implemented in (1) to (3) above.
Therefore, it is necessary to implement it in the place where the value of "UIApplicationStateActive" is true.
(example)
if (UIApplication.sharedApplication.applicationState == UIApplicationStateActive)
{
NSLog(@"UIApplicationStateActive is true.");
}
For example, instead of the viewDidAppear event described below
It seems that some developers implement it when the button is tapped.
[Code implementation example]
※Objective-C
-(void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
[self requestIDFA];
}
-(void)requestIDFA
{
ASIdentifierManager *identifierManager = [ASIdentifierManager sharedManager];
if (@available(iOS 14, *))
{
// Processing iOS14 or later
[ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status)
{
//How to start getting ads
[GADMobileAds.sharedInstance startWithCompletionHandler:^(GADInitializationStatus * _Nonnull status)
{
//Please reload the ad here, etc.
}];
if (status == ATTrackingManagerAuthorizationStatusAuthorized
|| status == ATTrackingManagerAuthorizationStatusNotDetermined)
{
// User has not selected "Do not track" in privacy settings (opt-in)
// Code to do something with the obtained IDFA
}
else if (status == ATTrackingManagerAuthorizationStatusDenied)
{
// User selects "Do not track" in privacy settings (opt out)
// Code if IDFA could not be obtained
}
else
{
// Something else
}
}];
}
else
{
// Processing before iOS13
//ASIdentifierManager *identifierManager = [ASIdentifierManager sharedManager];
if ([identifierManager isAdvertisingTrackingEnabled])
{
//NSString *idfa = identifierManager.advertisingIdentifier.UUIDString;
//NSLog(@"idfa:%@",idfa);
//Code to do something with the obtained IDFA
}
else
{
//NSLog(@"failure");
//Code if IDFA could not be obtained
}
}
}
2.6
2021-03-30
withAppData
[ver 2.6]
Update AdMob
Updated AdMob to Google Mobile Ads SDK.
※need minimum requirements version GoogleMobileAdsSdkiOS-7.64.0.
change control to WKWebView
the part that used UIWebView has been changed to WKWebView for security measures.
this app hard to see in dark mode.
for this reason, made it look like light mode.
best regards, abc3.me
by abc3.me
2.5
2018-01-31
withAppData
version 2.5
[new function add]
search condition list function add
if tap list button (star mark), display search condition list screen.
choose button
reflect saved condition chose data from list to search condtion screen.
save button
save setting condition data on search condition screen.
delete button
delete from choose data from the list.
[about search funciton]
search folder or file in this application folder.
extention search funtion only file.(not search folder)
1.search folder or file
it need to checkbox on folder or file label.
include string
display list that include string of folder or file name.
with begining string
display list that begining string of folder or file name.
with ending string
display list that ending string of folder or file name.
with equal string
display list that equal to string of folder or file name.
not include string
display list that not include string of folder or file name.
※if combination folder or file search option and extention search option,
display result of both matching folder or file list.
2.extention search
it need to check checkbox on extention label.
(1)choose extention
it need to check extention checkbox.
if tap under direction triangle mark button,
open extention list screen.
choose any extention.
display choose extention list.
(2)input extention
search same input extention of file.
※extention is file only.
※if combination folder or file search option and extention search option,
display result of both matching folder or file list.
3.search parent folder
choose folder and search result list.
4.folder or file date information
set create date and update date from calendar screen and search result list.
search after choose start date.
search after choose end date.
if set both start date and end date, range date of folder and file search result list.
5.file size
input minimum and maximum size and search list.
search above min file size.
search above max file size.
if set both size, search range of min and max size list.
6.kind of search
it is able to search file only or folder only.
best regards, abc3.me
by abc3.me