[Sony Cross-Device General] oldman20:
Thanks your thread, now i can understand how to port app! After read your guide, i try to port the Browser OEM app from Stock rom 4.4.2 to Custom rom 5.1.1 (SDK 19 or 20 [im not sure] to SDK22, right?), but i im stuck on step 3: what's apps required library framework file, cause AndroidManifest.xml file haven't any structure same <uses-library android:name="com.sony.device" android:required="true" />, as you can see below:

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.browser">
<original-package android:name="com.android.browser"/>
<permission android:label="@string/permission_preload_label" android:name="com.android.browser.permission.PRELOAD" android:protectionLevel="signatureOrSystem"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
<uses-permission android:name="android.permission.USE_CREDENTIALS"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.NFC"/>
<uses-permission android:name="android.permission.SEND_DOWNLOAD_COMPLETED_INTENTS"/>
<uses-permission android:name="android.permission.SET_WALLPAPER"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
<uses-permission android:name="android.permission.READ_SYNC_SETTINGS"/>
<uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS"/>
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS"/>
<uses-permission android:name="android.permission.READ_PROFILE"/>
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"/>
<uses-permission android:name="com.android.browser.permission.WRITE_HISTORY_BOOKMARKS"/>
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.GET_TASKS"/>
<uses-permission android:name="android.permission.EXPAND_STATUS_BAR"/>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-permission android:name="android.permission.SET_PREFERRED_APPLICATIONS"/>
<uses-permission android:name="android.permission.ACCESS_VOICE_ACTION"/>
<uses-permission android:name="com.android.launcher3.permission.READ_SETTINGS"/>
<uses-permission android:name="android.permission.FORCE_STOP_PACKAGES"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE"/>
<uses-permission android:name="android.permission.GET_TASKS"/>
<application android:backupAgent=".BrowserBackupAgent" android:hardwareAccelerated="true" android:icon="@drawable/shortcut_browser" android:label="@string/application_name" android:name="Browser" android:taskAffinity="android.task.browser" android:theme="@style/BrowserTheme" supportreartouch="true">
<provider android:authorities="com.android.browser;browser" android:exported="true" android:multiprocess="false" android:name=".provider.BrowserProvider2" android:readPermission="com.android.browser.permission.READ_HISTORY_BOOKMARKS" android:writePermission="com.android.browser.permission.WRITE_HISTORY_BOOKMARKS">
<path-permission android:path="/bookmarks/search_suggest_query" android:readPermission="android.permission.GLOBAL_SEARCH"/>
</provider>
<activity android:alwaysRetainTaskState="true" android:configChanges="locale|keyboard|keyboardHidden|orientation|screenSize" android:label="@string/application_name" android:launchMode="singleTask" android:name="BrowserActivity" android:theme="@style/BrowserTheme" android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.speech.action.VOICE_SEARCH_RESULTS"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="http"/>
<data android:scheme="https"/>
<data android:scheme="about"/>
<data android:scheme="javascript"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.BROWSABLE"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="http"/>
<data android:scheme="https"/>
<data android:scheme="inline"/>
<data android:mimeType="text/html"/>
<data android:mimeType="text/plain"/>
<data android:mimeType="application/xhtml+xml"/>
<data android:mimeType="application/vnd.wap.xhtml+xml"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.BROWSABLE"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="http"/>
<data android:scheme="https"/>
<data android:scheme="file"/>
<data android:mimeType="application/x-webarchive-xml"/>
</intent-filter>
<intent-filter android:priority="-101">
<action android:name="android.nfc.action.NDEF_DISCOVERED"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:scheme="http"/>
<data android:scheme="https"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.LAUNCHER"/>
<category android:name="android.intent.category.BROWSABLE"/>
<category android:name="android.intent.category.APP_BROWSER"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.WEB_SEARCH"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme=""/>
<data android:scheme="http"/>
<data android:scheme="https"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.MEDIA_SEARCH"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.SEARCH"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.pantech.MULTIWINDOW_LAUNCHER"/>
</intent-filter>
<meta-data android:name="android.app.searchable" android:resource="@xml/searchable"/>
</activity>
<activity android:icon="@mipmap/ic_launcher_shortcut_browser_bookmark" android:label="@string/shortcut_bookmark" android:name="ShortcutActivity" android:theme="@style/ShortcutTheme">
<intent-filter>
<action android:name="android.intent.action.CREATE_SHORTCUT"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
<activity android:configChanges="orientation|screenSize" android:icon="@mipmap/ic_launcher_shortcut_browser_bookmark" android:label="@string/shortcut_bookmark" android:name="SimpleHomeAddBookmark" android:theme="@style/ShortcutTheme">
<intent-filter>
<action android:name="android.intent.action.ADD_SIMPLE_BOOKMARK"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
<activity android:configChanges="orientation|screenSize" android:label="@string/menu_preferences" android:name="BrowserPreferencesPage" android:theme="@style/PreferencesPageTheme">
<intent-filter>
<action android:name="android.intent.action.MANAGE_NETWORK_USAGE"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.SKYSettingSlot"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
<meta-data android:name="IntentString" android:value="\#Intent;launchFlags=0x20000000;component=com.android.browser/.BrowserPreferencesPage;end"/>
</activity>
<activity android:excludeFromRecents="true" android:label="@string/bookmarks_search" android:name="BookmarkSearch" android:stateNotNeeded="true" android:theme="@android:style/Theme.NoDisplay">
<intent-filter>
<action android:name="android.intent.action.SEARCH"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
<meta-data android:name="android.app.searchable" android:resource="@xml/bookmarks_searchable"/>
</activity>
<activity android:configChanges="keyboardHidden|orientation|screenSize" android:label="@string/bookmarks_add_page" android:name="AddBookmarkPage" android:theme="@style/DialogWhenLarge" android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.INSERT"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:mimeType="vnd.android.cursor.dir/bookmark"/>
</intent-filter>
</activity>
<activity android:configChanges="keyboardHidden|orientation|screenSize" android:label="@string/bookmarks_history" android:name="ComboViewActivity" android:theme="@style/BookmarkTheme"/>
<activity android:launchMode="singleTask" android:name=".OneHandControlHelpActivity" android:screenOrientation="portrait" android:theme="@android:style/Theme.Translucent">
<intent-filter>
<action android:name="android.intent.action.OneHandControlHelpActivity"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
<activity android:launchMode="singleTask" android:name=".QuickControlTutorial1" android:screenOrientation="portrait" android:theme="@android:style/Theme.Translucent">
<intent-filter>
<action android:name="android.intent.action.QUICK_CONTROL_TUTORIAL1"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
<activity android:launchMode="singleTask" android:name=".QuickControlTutorial2" android:screenOrientation="portrait" android:theme="@android:style/Theme.Translucent">
<intent-filter>
<action android:name="android.intent.action.QUICK_CONTROL_TUTORIAL2"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
<receiver android:label="@string/v_bookmarks" android:name=".widget.BookmarkThumbnailWidgetProvider">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE"/>
<action android:name="com.android.browser.BOOKMARK_APPWIDGET_UPDATE"/>
<action android:name="com.pantech.launcher3.action.UPDATE_WIDGET_THEME"/>
</intent-filter>
<meta-data android:name="android.appwidget.provider" android:resource="@xml/bookmarkthumbnailwidget_info"/>
<meta-data android:name="com.pantech.appwidget" android:value="bookmarks"/>
<meta-data android:name="com.pantech.appwidget.update_later" android:value="bookmarks"/>
</receiver>
<service android:exported="false" android:name=".widget.BookmarkThumbnailWidgetService" android:permission="android.permission.BIND_REMOTEVIEWS"/>
<receiver android:exported="false" android:name=".widget.BookmarkWidgetProxy"/>
<activity android:name=".widget.BookmarkWidgetConfigure" android:taskAffinity="android.task.BookmarkWidgetConfigure" android:theme="@style/WidgetBookmarkConfigure">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_CONFIGURE"/>
</intent-filter>
</activity>
<meta-data android:name="android.app.default_searchable" android:value=".BrowserActivity"/>
<meta-data android:name="com.google.android.partnersetup.RLZ_ACCESS_POINT" android:value="@string/rlz_access_point"/>
<receiver android:name=".OpenDownloadReceiver">
<intent-filter>
<action android:name="android.intent.action.DOWNLOAD_NOTIFICATION_CLICKED"/>
</intent-filter>
</receiver>
<provider android:authorities="com.android.browser.home" android:exported="false" android:name=".homepages.HomeProvider" android:readPermission="com.android.browser.permission.READ_HISTORY_BOOKMARKS"/>
<receiver android:name=".AccountsChangedReceiver">
<intent-filter>
<action android:name="android.accounts.LOGIN_ACCOUNTS_CHANGED"/>
</intent-filter>
</receiver>
<receiver android:name=".PreloadRequestReceiver" android:permission="com.android.browser.permission.PRELOAD">
<intent-filter>
<action android:name="android.intent.action.PRELOAD"/>
<data android:scheme="http"/>
</intent-filter>
</receiver>
<provider android:authorities="com.android.browser.snapshots" android:exported="false" android:name=".provider.SnapshotProvider"/>
<receiver android:exported="false" android:name=".SetPreferredBrowser">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
</receiver>
<receiver android:name=".FontLocaleChangeReceiver">
<intent-filter>
<action android:name="android.intent.action.LOCALE_CHANGED"/>
</intent-filter>
</receiver>
<activity android:configChanges="orientation|screenSize" android:excludeFromRecents="true" android:label="SimpleHomeBookmark" android:name=".simplehome.SimpleBookmark" android:screenOrientation="portrait" android:taskAffinity="android.task.simplebookmark" android:theme="@style/SimpleHome" android:windowSoftInputMode="adjustPan">
<intent-filter>
<action android:name="com.pantech.simple.BROWSER"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
<service android:name=".inarrator.INarratorService" android:process=":InarratorService">
<intent-filter>
<action android:name="com.pantech.Inarrator"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</service>
<receiver android:name="com.android.browser.inarrator.INarratorServiceReceiver">
<intent-filter>
<action android:name="android.intent.action.MEDIA_BUTTON"/>
<action android:name="android.media.AUDIO_HEADSET_PLUGED"/>
<action android:name="android.media.AUDIO_BECOMING_NOISY"/>
</intent-filter>
</receiver>
<activity android:configChanges="locale|keyboard|keyboardHidden|orientation|screenSize" android:name=".inarrator.INarratorDetailActivity" android:theme="@style/INarratorTheme">
<intent-filter>
<action android:name="android.intent.action.INARRATOR_DETAIL_PAGE"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity android:configChanges="keyboardHidden|orientation|screenSize" android:label="@string/narrator_offline_list" android:name=".inarrator.INarratorListeningActivity" android:theme="@style/BookmarkTheme"/>
<activity android:configChanges="keyboardHidden|orientation|screenSize" android:name=".inarrator.ViewListActivitys" android:theme="@style/BookmarkTheme"/>
<provider android:authorities="com.android.browser.inarrator" android:exported="false" android:name=".provider.INarratorProvider"/>
<service android:name="com.android.browser.aot.AOTBrowser" android:permission="android.permission.BIND_ALWAYS_ON_TOP">
<intent-filter>
<action android:name="android.alwaysontopservice.AlwaysOnTopService"/>
</intent-filter>
<meta-data android:name="android.alwaysontopservice.aot" android:resource="@xml/aot_method"/>
</service>
<receiver android:exported="false" android:name="com.android.browser.capture.PageCaptureReceiver">
<intent-filter>
<action android:name="com.android.browser.capture.DELETE"/>
</intent-filter>
<intent-filter>
<action android:name="com.android.browser.capture.EDIT"/>
</intent-filter>
</receiver>
</application>
</manifest>

so i cant know how to do next. Would you help me, please!