{"id":700,"date":"2023-07-11T12:04:07","date_gmt":"2023-07-11T04:04:07","guid":{"rendered":"https:\/\/www.zhidianwl.net\/zhidianwl\/?p=700"},"modified":"2023-07-11T12:04:07","modified_gmt":"2023-07-11T04:04:07","slug":"%e5%ae%89%e5%8d%93apk%e4%bb%a3%e7%a0%81%e6%98%af%e4%bb%80%e4%b9%88%e6%84%8f%e6%80%9d%ef%bc%9f","status":"publish","type":"post","link":"https:\/\/www.zhidianwl.net\/zhidianwl\/2023\/07\/11\/%e5%ae%89%e5%8d%93apk%e4%bb%a3%e7%a0%81%e6%98%af%e4%bb%80%e4%b9%88%e6%84%8f%e6%80%9d%ef%bc%9f\/","title":{"rendered":"\u5b89\u5353apk\u4ee3\u7801\u662f\u4ec0\u4e48\u610f\u601d\uff1f"},"content":{"rendered":"
\u5b89\u5353apk\u4ee3\u7801\u662f\u6307\u5b89\u5353\u5e94\u7528\u7a0b\u5e8f\u7684\u4ee3\u7801\uff0c\u5b83\u662f\u7531Java\u8bed\u8a00\u7f16\u5199\u7684\u3002\u5728\u5b89\u5353\u5e94\u7528\u7a0b\u5e8f\u4e2d\uff0c\u4ee3\u7801\u4e3b\u8981\u7531Activity\u3001Service\u3001BroadcastReceiver\u548cContentProvider\u7b49\u56db\u4e2a\u7ec4\u4ef6\u6784\u6210\u3002<\/p>\n
1. Activity<\/p>\n
Activity\u662f\u5b89\u5353\u5e94\u7528\u7a0b\u5e8f\u7684\u754c\u9762\uff0c\u6bcf\u4e2aActivity\u90fd\u8868\u793a\u4e00\u4e2a\u5c4f\u5e55\u3002\u5728Activity\u4e2d\uff0c\u6211\u4eec\u53ef\u4ee5\u901a\u8fc7\u4ee3\u7801\u6765\u521b\u5efa\u754c\u9762\u5143\u7d20\uff0c\u6bd4\u5982\u6309\u94ae\u3001\u6587\u672c\u6846\u3001\u56fe\u7247\u7b49\u7b49\u3002\u540c\u65f6\uff0c\u6211\u4eec\u4e5f\u53ef\u4ee5\u901a\u8fc7\u4ee3\u7801\u6765\u54cd\u5e94\u7528\u6237\u7684\u64cd\u4f5c\uff0c\u6bd4\u5982\u70b9\u51fb\u6309\u94ae\u3001\u8f93\u5165\u6587\u672c\u7b49\u7b49\u3002\u4ee5\u4e0b\u662f\u4e00\u4e2a\u7b80\u5355\u7684Activity\u4ee3\u7801\u793a\u4f8b\uff1a<\/p>\n
“`java<\/p>\n
public class MainActivity extends Activity {<\/p>\n
@Override<\/p>\n
protected void onCreate(Bundle savedInstanceState) {<\/p>\n
super.onCreate(savedInstanceState);<\/p>\n
setContentView(R.layout.activity_main);<\/p>\n
}<\/p>\n
public void onButtonClick(View view) {<\/p>\n
\/\/ \u5904\u7406\u6309\u94ae\u70b9\u51fb\u4e8b\u4ef6<\/p>\n
}<\/p>\n
public void onTextChanged(CharSequence s, int start, int before, int count) {<\/p>\n
\/\/ \u5904\u7406\u6587\u672c\u6846\u5185\u5bb9\u53d8\u5316\u4e8b\u4ef6<\/p>\n
}<\/p>\n
}<\/p>\n
“`<\/p>\n
2. Service<\/p>\n
Service\u662f\u5b89\u5353\u5e94\u7528\u7a0b\u5e8f\u7684\u540e\u53f0\u670d\u52a1\uff0c\u5b83\u53ef\u4ee5\u5728\u540e\u53f0\u8fd0\u884c\uff0c\u4e0d\u53d7\u754c\u9762\u7684\u9650\u5236\u3002\u5728Service\u4e2d\uff0c\u6211\u4eec\u53ef\u4ee5\u901a\u8fc7\u4ee3\u7801\u6765\u6267\u884c\u4e00\u4e9b\u8017\u65f6\u7684\u64cd\u4f5c\uff0c\u6bd4\u5982\u4e0b\u8f7d\u6587\u4ef6\u3001\u64ad\u653e\u97f3\u4e50\u7b49\u7b49\u3002\u4ee5\u4e0b\u662f\u4e00\u4e2a\u7b80\u5355\u7684Service\u4ee3\u7801\u793a\u4f8b\uff1a<\/p>\n
“`java<\/p>\n
public class DownloadService extends Service {<\/p>\n
@Override<\/p>\n
public int onStartCommand(<\/p>\n
Intent intent, int flags, int startId) {<\/p>\n \/\/ \u5904\u7406\u4e0b\u8f7d\u4efb\u52a1<\/p>\n return super.onStartCommand(intent, flags, startId);<\/p>\n }<\/p>\n @Override<\/p>\n public IBinder onBind(Intent intent) {<\/p>\n return null;<\/p>\n }<\/p>\n }<\/p>\n “`<\/p>\n 3. BroadcastReceiver<\/p>\n BroadcastReceiver\u662f\u5b89\u5353\u5e94\u7528\u7a0b\u5e8f\u7684\u5e7f\u64ad\u63a5\u6536\u5668\uff0c\u5b83\u53ef\u4ee5\u63a5\u6536\u7cfb\u7edf\u53d1\u51fa\u7684\u5e7f\u64ad\u6d88\u606f\u3002\u5728BroadcastReceiver\u4e2d\uff0c\u6211\u4eec\u53ef\u4ee5\u901a\u8fc7\u4ee3\u7801\u6765\u5904\u7406\u5e7f\u64ad\u6d88\u606f\uff0c\u6bd4\u5982\u663e\u793a\u901a\u77e5\u3001\u542f\u52a8Activity\u7b49\u7b49\u3002\u4ee5\u4e0b\u662f\u4e00\u4e2a\u7b80\u5355\u7684BroadcastReceiver\u4ee3\u7801\u793a\u4f8b\uff1a<\/p>\n “`java<\/p>\n public class MyReceiver extends BroadcastReceiver {<\/p>\n @Override<\/p>\n<\/figure>\n<\/p>\n